CN102164022A - 处理分块低密度奇偶校验码的系统和方法 - Google Patents

处理分块低密度奇偶校验码的系统和方法 Download PDF

Info

Publication number
CN102164022A
CN102164022A CN2011100746579A CN201110074657A CN102164022A CN 102164022 A CN102164022 A CN 102164022A CN 2011100746579 A CN2011100746579 A CN 2011100746579A CN 201110074657 A CN201110074657 A CN 201110074657A CN 102164022 A CN102164022 A CN 102164022A
Authority
CN
China
Prior art keywords
matrix
parity
sign indicating
indicating number
permutation
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
CN2011100746579A
Other languages
English (en)
Other versions
CN102164022B (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN102164022A publication Critical patent/CN102164022A/zh
Application granted granted Critical
Publication of CN102164022B publication Critical patent/CN102164022B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • 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
    • 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
    • H03M13/1162Array based LDPC codes, e.g. array 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/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • 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/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/1151Algebraically constructed LDPC codes, e.g. LDPC codes derived from Euclidean geometries [EG-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/1171Parity-check or generator matrices with non-binary elements, e.g. for non-binary 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/1191Codes on graphs other than LDPC codes
    • H03M13/1194Repeat-accumulate [RA] codes

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)

Abstract

公开了处理分块低密度奇偶校验码的系统和方法。一种用于处理分块低密度奇偶校验LDPC码的系统包括:解码装置,用于使用奇偶校验矩阵解码分块LDPC码,所述奇偶校验矩阵包括信息部分和奇偶性部分。所述奇偶性部分包括:第一部分(B),包括多个第一置换矩阵,第二部分(D),包括第二置换矩阵,第三部分(T),包括多个单位矩阵(I)和多个第三置换矩阵,所述多个单位矩阵沿对角线安排在该第三部分内,所述多个第三置换矩阵安排在所述多个单位矩阵下方,以及第四部分(E),包括第四置换矩阵。

Description

处理分块低密度奇偶校验码的系统和方法
本申请是国际申请日为2004年8月26日、中国申请号为200480023682.2、发明名称为“在移动通信系统中编码/解码分块低密度奇偶校验码的装置和方法”的发明专利申请的分案申请。
技术领域
本发明通常涉及移动通信系统,尤其是,涉及一种用于编码/解码分块低密度奇偶校验(LDPC)码的装置和方法。
背景技术
随着在二十世纪七十年代后期在美国对蜂窝移动通信系统的引入,韩国开始以高级移动电话服务(AMPS)系统(第一代(1G)模拟移动通信系统)提供电话通信业务。在二十世纪九十年代中期,韩国使码分多址(CDMA)系统(第二代(2G)移动通信系统)商业化,以提供语音和低速数据业务。
在二十世纪九十年代的后期,韩国部分地部署了一种IMT-2000(国际移动电信-2000)系统(第三代(3G)移动通信系统),其目标是高级无线多媒体业务、在世界范围内的漫游和高速数据业务。第3代移动通信系统是顺应服务数据量的迅速增长、为了以高速传输数据而特别开发的。也就是说,该第3代移动通信系统已经发展成数据分组业务通信系统,并且该数据分组业务通信系统给多个移动站传送突发分组数据,并且被设计用于传输海量数据。该数据分组业务通信系统正在被开发用于高速数据分组业务。
第3代移动通信系统正演进为第4代(4G)移动通信系统。4G移动通信系统正在进行标准化,除前代移动通信系统提供的单纯的无线通信服务之外,4G移动通信系统还对有线通信网络和无线通信网络之间的交互作用和集成化进行标准化。必须为无线通信网络开发用于传输高达有线通信网络中可获得的容量级别的大量数据的技术。
由于需要能够处理和传输诸如图像和无线电数据的数据以及单纯话音业务数据的高速、大容量通信系统,所以,为了改善系统性能,必须使用一种适宜的信道编码方案来提高系统传输效率。根据在数据传输期间的信道条件,移动通信系统不可避免地遭遇由于噪声、干扰和衰落而出现的差错。该差错的存在导致信息数据的损失。
为了降低由于差错的存在而导致的该信息数据损失,通过使用各种各样的差错控制技术有可能改善移动通信系统的可靠性。一种使用纠错码的技术是最流行使用的差错控制技术。现在将描述作为典型纠错码的turbo码和低密度奇偶校验(LDPC)码。
Turbo码
Turbo码是在同步3G移动通信系统和异步3G移动通信系统中使用的纠错码。众所周知,在高速数据发送期间,turbo码在性能增益方面优于先前用作主前向纠错码的卷积码。此外,turbo码在以下的方面是有益的,即,其可以高效地纠正由在传输信道中产生的噪音所引起的差错,从而提高数据发送的可靠性。
LDPC码
LDPC码可以使用基于因子图的和积算法的迭代译码算法来解码。因为LDPC码的解码器使用基于和积算法的迭代译码算法,因此比turbo码的解码器的复杂度低。此外,与turbo码的解码器相比较,LDPC码的解码器容易以并行处理解码器来实现。当利用因子图表示LDPC码的时候,在LDPC码的因子图上存在环。众所周知,在存在环的LDPC码的因子图上的迭代译码是次于最优化的(次最优的)。此外,已经用实验方法证明,通过迭代译码,LDPC码具有极好的性能。但是,当许多具有短长度的环存在于LDPC码的因子图当中的时候,LDPC码性能降低。因此,正在不断地进行研究,旨在开发一种用于设计LDPC码的技术,以便在LDPC码的因子图上不存在短长度的环。
由于生成矩阵通常具有高重量密度的特性,LDPC码的编码过程已经发展成一种使用具有低重量密度的奇偶校验矩阵的编码过程。“重量”代表构成生成矩阵和奇偶校验矩阵的元素当中具有非零值的元素。尤其是,如果在奇偶校验矩阵中对应于奇偶性的部分矩阵具有规则的格式,更加高效的编码是可能的。
因为LDPC码包括具有非零值的各种各样的码,所以在将LDPC码投入到实际使用时,开发用于各种类型LDPC码的高效编码算法和高效解码算法是非常重要的。此外,因为LDPC码的奇偶校验矩阵决定LDPC码的性能,因此设计具有极好性能的奇偶校验矩阵也是非常重要的。也就是说,为了产生一个高性能的LDPC码,必须同时考虑具有极好性能的高效奇偶校验矩阵、高效编码算法和高效解码算法。
一个LDPC码是由奇偶校验矩阵定义的,在奇偶校验矩阵中大部分的元素具有0值,并且除具有0值的元素之外的小部分元素具有1值。例如,(N,j,k)LDPC码是具有分组长度N的线性分组码,并且是通过稀疏的奇偶校验矩阵定义的,在稀疏的奇偶校验矩阵中,每列具有j个具有1值的元素,每个行具有k个具有1值的元素,并且除了具有1值的元素之外的所有元素都具有0值。
如上所述的LDPC码被称作“规则的LDPC码”,在该LDPC码中,奇偶校验矩阵中每列的重量值被固定为“j”并且奇偶校验矩阵中每行的重量值被固定为“k”。在此处,重量值代表非零元素的数目。与规则的LDPC码不同,奇偶校验矩阵中每列的重量值和奇偶校验矩阵中每行的重量值不固定的LDPC码被称作“不规则的LDPC码”。众所周知,不规则LDPC码比规则的LDPC码在性能方面优越。但是,在不规则的LDPC码的情况下,因为奇偶校验矩阵中每列的重量值和每行的重量值是不固定的,即,是不规则的,因此为了保证极好的性能,必须适当地调整奇偶校验矩阵中每列的重量值和奇偶校验矩阵中每行的重量值。
参考图1,现在将描述(8,2,4)LDPC码的奇偶校验矩阵,作为(N,j,k)LDPC码的一个例子。
图1是举例说明通常的(8,2,4)LDPC码的奇偶校验矩阵的示意图。参考图1,该(8,2,4)LDPC码的奇偶校验矩阵H由8列和4行组成,其中每列的重量值被固定为2,并且每行的重量值被固定为4。由于如上所述在该奇偶校验矩阵中每列的重量值和每行的重量值都是规则的,所以,图1所示的该(8,2,4)LDPC码成为规则的LDPC码。
以下将参考图2描述结合图1所描述的该(8,2,4)LDPC码的因子图。
图2是举例说明图1的该(8,2,4)LDPC码的因子图示意图。参考图2,该(8,2,4)LDPC码的因子图由8个变量节点x1211、x2213、x3215、x4217、x5219、x6221、x7223和x8225,和4个校验节点227、229、231和233组成。当具有重量(即,1值)的元素存在于该(8,2,4)LDPC码的奇偶校验矩阵的第i行和第j列交点上的时候,在变量节点xj和第i个校验节点之间形成支路(branch)。
如上所述,由于LDPC码的奇偶校验矩阵具有小的重量值,所以,即使在具有相对较长长度的分组码中也可以通过迭代译码过程执行解码,在不断增加分组码的分组长度时,会呈现出一种诸如turbo码的近似香农(Shannon)限的信道容量。已经证明,使用流量传输技术的LDPC码的迭代译码处理在性能方面近似接近于turbo码的迭代译码处理。
为了生成高性能的LDPC码,应该满足以下的条件:
(1)应该考虑在LDPC码的因子图上的环。
该“环”是指由在LDPC码的因子图中将变量节点连接到校验节点的边所形成的回路(loop),并且该环的长度被定义为构成回路的边的数目。环的长度长指的是,在LDPC码的因子图中,构成回路的、从变量节点连接到校验节点的边的数目大。相比之下,环的长度短指的是,在LDPC码的因子图中,构成回路的、从变量节点连接到校验节点的边的数目小。
当在LDPC码的因子图中环变得更长时,由于下列理由,LDPC码的性能效率增加。也就是说,当在LDPC码的因子图中产生长环时,可以防止性能退化,诸如当太多具有短的长度的环存在于LDPC码的因子图当中的时候出现误码平台(error floor)。
(2)应该考虑LDPC码的高效编码
与卷积码或者turbo码相比较,因为LDPC码的高编码复杂性,所以很难对LDPC码进行实时编码。为了降低LDPC码的编码复杂性,已经提出了重复累积(RA)码。该RA码在降低LDPC码的编码复杂性方面也具有限制。因此,应该考虑LDPC码的高效编码。
(3)应该考虑在LDPC码的因子图上的度数分布。
通常,不规则的LDPC码在性能方面比规则的LDPC码优越,因为不规则的LDPC码的因子图具有各种各样的度数。该“度数”指的是在LDPC码的因子图中连接到变量节点和校验节点的边的数目。此外,在LDPC码的因子图上的“度数分布”指的是具有特定度数的节点数目与节点的总数的比。已经证明,具有特定度数分布的LDPC码在性能方面是优越的。
图3是一个举例说明常规的分块LDPC码(block LDPC code)的奇偶校验矩阵的示意图。在给出图3的描述之前,应当注意到,分块LDPC码是不仅考虑到高效编码、并且还考虑到奇偶校验矩阵的高效存储和性能改善的新的LDPC码,并且分块LDPC码是通过总结规则的LDPC码的结构而扩展出的一种LDPC码。参考图3,分块LDPC码的奇偶校验矩阵被划分为多个部分块,并且每个部分块映射一个置换矩阵(permutation matrix)。在图3中,“P”代表具有Ns×Ns大小的置换矩阵,并且置换矩阵P的上标(或者指数)aij或者是0≤aij≤Ns-1,或者是aij=∞。在图3中,p代表部分块的行的数目,并且q代表部分块的列的数目。“i”指的是相应的置换矩阵位于该奇偶校验矩阵的部分块的第i行中,并且“j”指的是相应的置换矩阵位于奇偶校验矩阵的部分块的第j列中。也就是说,
Figure BDA0000052345200000051
是位于第i行和第j列交点的部分块中的置换矩阵。
现在将参考图4描述所述置换矩阵。
图4是一个举例说明图3的置换矩阵P的示意图。如在图4中举例说明的,置换矩阵P是一个具有Ns×Ns大小的矩形矩阵,并且构成该置换矩阵P的Ns个列的每个列具有1的重量,以及构成该置换矩阵P的Ns个行的每个行也具有1的重量。
在图3中,带有上标aij=0的置换矩阵、即置换矩阵P0表示一单位矩阵INs×Ns,并且带有上标aij=∞的置换矩阵、即置换矩阵P表示一零矩阵。
在图3中举例说明的分块LDPC码的整个奇偶校验矩阵中,因为行的总数是Ns×p,并且列的总数是Ns×q(p≤q),所以当LDPC码的整个奇偶校验矩阵具有满秩的时候,编码速率可以表示为与部分块大小无关的方程式(1)。
R = N s × q - N s × p N s × q = q - p q = 1 - p q . . . . . . ( 1 )
如果对于所有的i和j,aij≠∞,那么,对应于部分块的置换矩阵不是零矩阵,并且部分块构成一个规则的LDPC码,其中对应于部分块的每个置换矩阵中,每列的重量值和每行的重量值分别是p和q。这里,对应于部分块的每个置换矩阵被称作“部分矩阵”。
因为在整个的奇偶校验矩阵中存在(p-1)个相关的行,所以编码速率比通过方程式(1)计算的编码速率更高。在分块LDPC码的情况下,如果构成整个奇偶校验矩阵的每个部分矩阵的第一行的重量位置被确定,那么,剩余(Ns-1)行的重量位置也被确定。因此,与重量被不规则地选择的情况相比,存储有关整个奇偶校验矩阵的信息所需的存储器的大小被减少为1/Ns
图5是一个举例说明常规的规则分块LDPC码的奇偶校验矩阵的示意图。在图5中举例说明的奇偶校验矩阵是(s,r)阵列码,即,规则的分块LDPC码。提出的(s,r)阵列码是典型的规则的分块LDPC码,并且(s,r)阵列码对应于在图3中Ns=s和q=s以及p=r的分块LDPC码。在这里,“s”是一个奇质数,并且“r”始终满足条件r≤s。
(s,r)阵列码的奇偶校验矩阵具有s2列和r×s行,并且其秩变为r×(s-1)。(s,r)阵列码的奇偶校验矩阵的秩变为r×(s-1)的理由是,因为在(s,r)阵列码的奇偶校验矩阵的行方向中有r个部分矩阵的情况下,如果将每一个部分矩阵中的s行加在一起,则产生一个其中所有的元素都具有1值的矩阵。也就是说,因为产生了所有的元素都具有1值的r行,因此可以理解,存在r个相关的行。因此,(s,r)阵列码的编码速率Rarray可以表示为方程式(2)。
R array = s 2 - r × ( s - 1 ) s 2 = 1 - r × ( s - 1 ) s 2 > 1 - r s . . . . . . ( 2 )
如上所述,可以注意到,在该(s,r)阵列码的情况下,因为其代数学的特性,在因子图中不存在具有长度4的环,并且如上所述,还能够减少存储器的容量。
但是,因为(s,r)阵列码是规则的LDPC码,因此它在性能上次于不规则的LDPC码。此外,由于其随机性很低,所以,分块LDPC码不能保证极好的性能。也就是说,虽然被认为是高效编码,但(s,r)阵列码仍然具有很高的编码复杂性,并且在(s,r)阵列码中,虽然不存在具有长度4的环,但是也存在具有长度6的环。此外,因为没有考虑度数分布,所以出现性能降低。
图6是一个举例说明常规的不规则分块LDPC码的奇偶校验矩阵的示意图。在给出图6的描述之前,应当注意到,不规则的分块LDPC码是通过修改与图5一起描述的阵列码,同时考虑到高效编码而给出的一种分块LDPC码。在图6中举例说明的不规则的分块LDPC码的奇偶校验矩阵中,“k”和“r”是满足条件k,r≤s(s=质数)的整数,“I”表示一个具有s×s大小的单位矩阵,并且“0”表示具有s×s大小的零矩阵。在图6中举例说明的不规则的分块LDPC码的奇偶校验矩阵对应于在图3中Ns=s,q=k和p=r的分块LDPC码的奇偶校验矩阵。
为了LDPC码的高效编码,如图6所示,通过将整个奇偶校验矩阵中对应于奇偶性的部分矩阵形成为全下三角矩阵,来在线性时间内实现编码。以下将描述该整个奇偶校验矩阵的结构,即,对应于信息字的部分矩阵和对应于奇偶性的部分矩阵的结构。当以这种方式形成作为全下三角矩阵的对应于奇偶性的部分矩阵时,奇偶校验矩阵由于其结构特性而总是具有满秩。因此,经修改的阵列码,即不规则的LDPC码,的分组长度变为ks,并且编码速率R可以表示为方程式(3)
R = k - r k = 1 - r k . . . . . . ( 3 )
然而,虽然图6的不规则的LDPC码比阵列码具有更高的效率,其具有一个奇偶校验矩阵,其中对应于奇偶性的部分矩阵具有全下三角矩阵的形式,但是,没有考虑在LDPC码的产生期间必须考虑的在因子图上的分布度数,并且也没有考虑除去具有短长度的环。因此,在纠错能力方面,其比具有随机性的不规则LDPC码低。因此,需要一种使纠错能力最大化的不规则LDPC码。
发明内容
因此,本发明的一个目的是提供一种用于在移动通信系统中以最大化的纠错能力编码/解码LDPC码的装置和方法。
本发明的另一个目的是提供一种用于在移动通信系统中以最大化的最小环长度编码/解码LDPC码的装置和方法。
本发明的再一个目的是提供一种用于在移动通信系统中以最小化的编码复杂性来编码/解码LDPC码的装置和方法。
根据本发明的第一个方面,提供了一种用于产生分块低密度奇偶校验(LDPC)码的奇偶校验矩阵以改善纠错能力的方法,该奇偶校验矩阵具有对应于信息字的信息部分,对应于奇偶性的第一奇偶性部分,和对应于奇偶性的第二奇偶性部分。该方法包括步骤:基于当借助于分块LDPC码编码信息字时应用的编码速率和码字长,确定该奇偶校验矩阵的大小;将具有所确定大小的奇偶校验矩阵划分为预定数目的块;将所述块划分为对应于信息部分的块、对应于第一奇偶性部分的块,和对应于第二奇偶性部分的块;在划分为第一奇偶性部分的块当中的预定的块中安排作为第一置换矩阵的置换矩阵,并且在划分为第二奇偶性部分的块当中的预定的块中以全下三角形式安排作为第二置换矩阵的置换矩阵;和在划分为该信息部分的块中安排作为第三置换矩阵的置换矩阵,以使得在分块LDPC码的因子图上最小环长度被最大化,并且重量是不规则的。
根据本发明的第二个方面,提供了一种用于解码块低密度奇偶校验(LDPC)码的方法。该方法包括步骤:产生一个由对应于信息字的信息部分、以及每个对应于奇偶性的第一奇偶性部分和第二奇偶性部分组成的奇偶校验矩阵,并且根据该奇偶校验矩阵确定去交织技术和交织技术;检测接收信号的概率值;在当前的解码过程中通过从该接收信号的概率值中减去在先前的解码过程中的交织的信号来产生第一信号;使用该去交织技术去交织该第一信号;通过接收该去交织的信号检测概率值;通过从该去交织的信号的概率值中减去该去交织的信号来产生第二信号;和使用该交织技术交织该第二信号,并且迭代译码交织的信号。
根据本发明的第三个方面,提供了一种用于编码分块低密度奇偶校验(LDPC)码的方法。该方法包括步骤:通过以先前产生的奇偶校验矩阵的第一部分矩阵乘以信息字来产生第一信号,该奇偶校验矩阵由对应于信息字的信息部分、以及每个对应于奇偶性的第一奇偶性部分和第二奇偶性部分组成;通过以该奇偶校验矩阵的第二部分矩阵乘以该信息字来产生第二信号;通过以该奇偶校验矩阵的第三部分矩阵和第四部分矩阵的逆矩阵的矩阵积乘以第一信号来产生第三信号;通过相加第二信号和第三信号来产生第四信号;通过以该奇偶校验矩阵的第五部分矩阵乘以该第四信号来产生第五信号;通过相加第一信号和第五信号来产生第六信号;通过以该奇偶校验矩阵的第四部分矩阵的逆矩阵乘以第六信号来产生第七信号;和根据该分块LDPC码的格式多路复用该信息字、作为第一奇偶性的该第四信号,和作为第二奇偶性的该第七信号。其中,该第一部分矩阵和第二部分矩阵是对应于该信息部分的部分矩阵,并且置换矩阵被安排成使得在分块LDPC码的因子图上最小环长度被最大化,并且重量值是不规则的。并且其中,该第五部分矩阵和第六部分矩阵是对应于该第一奇偶性部分的部分矩阵,该第三部分矩阵和第四部分矩阵是对应于该第二奇偶性部分的部分矩阵;该第五部分矩阵和第六部分矩阵是在预定的位置安排置换矩阵的部分矩阵,并且该第四部分矩阵是以全下三角形式安排置换矩阵的部分矩阵。
根据本发明的第四个方面,提供了一种用于产生奇偶校验矩阵以改善纠错能力的方法,该奇偶校验矩阵被安排在多个信息部分块和多个奇偶性部分块的行和列的矩阵中,该奇偶校验矩阵被划分为由该信息部分块的矩阵组成的信息部分,和由该奇偶性部分块的矩阵组成的奇偶性部分,该信息部分块的每个由代表多个信息比特的矩阵组成,该奇偶性部分块的每个由代表多个奇偶性比特的矩阵组成,存在于该奇偶校验矩阵中的多个行中的该信息部分块和该奇偶性部分块的每个被划分为第一信息矩阵、第一奇偶性矩阵和第二奇偶性矩阵,存在于除所述多个行之外的剩余的行中的该信息部分块和该奇偶性部分块的每个被划分为第二信息矩阵、第三奇偶性矩阵和第四奇偶性矩阵,并且该第一和第二信息矩阵、第一和第三奇偶性矩阵,和第二和第四奇偶性矩阵被分别地安排在相同的列中。该方法包括步骤:将该第三奇偶性矩阵与第四奇偶性矩阵、第二奇偶性矩阵的逆矩阵和第一奇偶性矩阵的积相加,使得和是单位矩阵;通过以对应于第一信息矩阵和第二信息矩阵的信息矢量乘以第二信息矩阵与第四奇偶性矩阵、第二奇偶性矩阵的逆矩阵和第一信息矩阵的积的和,确定对应于第一奇偶性矩阵和第三奇偶性矩阵的第一奇偶性矢量的转置矢量;和通过以第一信息矩阵和该信息矢量的转置矢量的积与第一奇偶性矩阵和该第一奇偶性矢量的转置矢量的积的和乘以第二奇偶性矩阵的逆矩阵,确定对应于第二奇偶性矩阵和第四奇偶性矩阵的第二奇偶性矢量的转置矢量。
根据本发明的第五个方面,提供了一种用于产生分块低密度奇偶校验(LDPC)码的奇偶校验矩阵以改善纠错能力的方法,该奇偶校验矩阵被安排在多个部分块的行和列的矩阵中,并且并且置换矩阵被安排在该部分块的每个中,置换矩阵是通过根据该部分块的每一个将具有Ns×Ns大小的单位矩阵移动预定的指数来产生的。该方法包括步骤:确定该分块LDPC码的块环作为第一值;和通过第二值乘以一个值来确定第二值,该值是通过从在安排在该部分块的每个中的置换矩阵当中具有偶数指数的置换矩阵的指数和中减去从在安排在该部分块的每个中的置换矩阵当中具有奇数指数的置换矩阵的指数和而确定的,和执行一个控制操作,使得该部分块的每个具有对应于该第一值和第二值的积的环。
根据本发明的第六个方面,提供了一种用于解码分块低密度奇偶校验(LDPC)码的装置。该装置包括变量节点解码器,用于根据预定的控制信号以及构成该奇偶校验矩阵的每列的重量连接变量节点,并且检测接收信号的概率值,该奇偶校验矩阵由对应于信息字的信息部分、每个对应于奇偶性的第一奇偶性部分和第二奇偶性部分组成;第一加法器,用于从当前的解码过程中从该变量节点解码器输出的信号中减去从交织器输出的信号;去交织器,用于使用根据该奇偶校验矩阵设置的去交织技术去交织从该第一加法器输出的信号;校验节点解码器,用于根据构成该奇偶校验矩阵的每行的重量连接校验节点,并且根据预定的控制信号检测从该去交织器输出的信号的概率值;第二加法器,用于从该校验节点解码器输出的信号中减去从该去交织器输出的信号;交织器,用于使用根据该奇偶校验矩阵设置的交织技术来交织从第二加法器输出的信号,并且将交织的信号输出给该变量节点解码器和该第一加法器;和控制器,用于产生该奇偶校验矩阵,并且根据该奇偶校验矩阵控制该去交织技术和该交织技术。
根据本发明的第七个方面,提供了一种用于编码分块低密度奇偶校验(LDPC)码的装置。该装置包括第一矩阵乘法器,用于以奇偶校验矩阵的第一部分矩阵乘以接收的信息字,该奇偶校验矩阵由对应于信息字的信息部分、以及每个对应于奇偶性的第一奇偶性部分和第二奇偶性部分组成;第二矩阵乘法器,用于以奇偶校验矩阵的第二部分矩阵乘以该信息字;第三矩阵乘法器,用于以该奇偶校验矩阵的第三部分矩阵和第四部分矩阵的逆矩阵的矩阵积乘以从该第一矩阵乘法器输出的信号;第一加法器,用于相加从第二矩阵乘法器输出的信号和从第三矩阵乘法器输出的信号;第四矩阵乘法器,用于以该奇偶校验矩阵的第五部分矩阵乘以从该第一加法器输出的信号;第二加法器,用于相加从第一矩阵乘法器输出的信号和从第四矩阵乘法器输出的信号;第五矩阵乘法器,用于以该奇偶校验矩阵的第四部分矩阵的逆矩阵乘以从第二加法器输出的信号;和用于根据该分块LDPC码的格式多路复用该信息字、作为第一奇偶性的该第一加法器的输出信号、和作为第二奇偶性的第五矩阵乘法器的输出信号的开关。其中,该第一部分矩阵和第二部分矩阵是对应于该信息部分的部分矩阵,并且置换矩阵被安排成使得在分块LDPC码的因子图上最小环长度被最大化,并且重量值是不规则的。并且其中,该第五部分矩阵和第六部分矩阵是对应于该第一奇偶性部分的部分矩阵,该第三部分矩阵和第四部分矩阵是对应于该第二奇偶性部分的部分矩阵;该第五部分矩阵和第六部分矩阵是在预定的位置安排置换矩阵的部分矩阵,并且该第四部分矩阵是以全下三角形式安排置换矩阵的部分矩阵。
根据本发明的另一方面,提供一种用于处理分块低密度奇偶校验(LDPC)码的系统,该系统包括:解码装置,用于使用奇偶校验矩阵解码分块LDPC码,所述奇偶校验矩阵包括信息部分和奇偶性部分。所述奇偶性部分包括:第一部分(B),包括多个第一置换矩阵;第二部分(D),包括第二置换矩阵;第三部分(T),包括多个单位矩阵(I)和多个第三置换矩阵,所述多个单位矩阵沿对角线安排在该第三部分内,所述多个第三置换矩阵安排在所述多个单位矩阵下方;以及第四部分(E),包括第四置换矩阵。
根据本发明的另一方面,提供一种由解码装置解码分块低密度奇偶校验(LDPC)码的方法,该方法包括:使用奇偶校验矩阵解码分块LDPC码,该奇偶校验矩阵包括信息部分和奇偶性部分。所述奇偶性部分包括:第一部分(B),包括多个第一置换矩阵;第二部分(D),包括第二置换矩阵;第三部分(T),包括多个单位矩阵(I)和多个第三置换矩阵,所述多个单位矩阵沿对角线安排在该第三部分内,所述多个第三置换矩阵安排在所述多个单位矩阵下方;以及第四部分(E),包括第四置换矩阵。
根据本发明的另一方面,提供一种用于处理分块低密度奇偶校验(LDPC)码的系统,该系统包括:编码装置,用于使用奇偶校验矩阵编码分块LDPC码,该奇偶校验矩阵包括信息部分和奇偶性部分。该奇偶性部分包括:第一部分(B),包括多个第一置换矩阵;第二部分(D),包括第二置换矩阵;第三部分(T),包括多个单位矩阵(I)和多个第三置换矩阵,所述多个单位矩阵沿对角线安排在该第三部分内,所述多个第三置换矩阵安排在所述多个单位矩阵下方;以及第四部分(E),包括第四置换矩阵。
根据本发明的另一方面,提供一种由编码装置编码分块低密度奇偶校验(LDCP)码的方法,该方法包括:使用奇偶校验矩阵编码分块LDPC码,该奇偶校验矩阵包括信息部分和奇偶性部分。该奇偶性部分包括:第一部分(B),包括多个第一置换矩阵;第二部分(D),包括第二置换矩阵;第三部分(T),包括多个单位矩阵(I)和多个第三置换矩阵,所述多个单位矩阵沿对角线安排在该第三部分内,所述多个第三置换矩阵安排在所述多个单位矩阵下方;以及第四部分(E),包括第四置换矩阵。
附图说明
从下面结合附图的详细说明中,本发明的上述和其他的目的、特点以及优势将变得更明显,其中:
图1是举例说明常规的(8,2,4)LDPC码的奇偶校验矩阵的示意图;
图2是举例说明图1的(8,2,4)LDPC码的因子图的示意图;
图3是一个举例说明常规的分块LDPC码的奇偶校验矩阵的示意图;
图4是一个举例说明图3的置换矩阵P的示意图;
图5是一个举例说明常规的规则分块LDPC码的奇偶校验矩阵的示意图;
图6是一个举例说明常规的不规则分块LDPC码的奇偶校验矩阵的示意图;
图7是一个举例说明分块LDPC码的环结构的示意图,该分块LDPC码的奇偶校验矩阵由4个部分矩阵组成;
图8是一个举例说明分块LDPC码的环结构的示意图,该分块LDPC码的奇偶校验矩阵由6个部分矩阵组成;
图9是一个举例说明分块LDPC码的块环结构的示意图;
图10是一个举例说明分块LDPC码的块环结构的示意图,其中奇偶校验矩阵的6个部分矩阵是双重的(duplicated);
图11是一个举例说明分块LDPC码的块环结构的示意图,其中奇偶校验矩阵的7个部分块是双重的;
图12是一个举例说明具有一种全下三角矩阵形式的奇偶校验矩阵的示意图;
图13是一个举例说明具有一种类似于全下三角矩阵形式的奇偶校验矩阵的示意图;
图14是一个举例说明图13的奇偶校验矩阵的示意图,该奇偶校验矩阵被分成6个部分块;
图15是一个举例说明在图14中示出的部分矩阵B的转置矩阵、部分矩阵E、部分矩阵T和部分矩阵T的逆矩阵的示意图;
图16是一个举例说明根据本发明一个实施例的分块LDPC码的奇偶校验矩阵的示意图;
图17是一个举例说明根据本发明的一个实施例的用于产生分块LDPC码的奇偶校验矩阵的过程流程图;
图18是一个举例说明根据本发明的一个实施例的用于编码分块LDPC码的过程流程图;
图19是举例说明根据本发明一个实施例的用于分块LDPC码的编码装置的内部结构方框图;和
图20是举例说明根据本发明一个实施例的用于分块LDPC码的解码装置的内部结构方框图。
具体实施方式
现在将参考附带的附图详细地描述本发明的优选实施例。在下面的描述中,为了简洁已经省略了在此处结合的已知功能和结构的详细说明。
本发明提出了一种用于编码和解码高性能的不规则低密度奇偶校验(LDPC)码的方案。本发明提出了一种用于编码和解码不规则LDPC码的方案,其中在因子图上的最小环长度被最大化,编码复杂性被减到最小,并且在因子图上的度数分布被最优化。
当涉及一个LDPC码的因子图时,术语“环”指的是在因子图中由将变量节点连接到校验节点的边形成的回路,并且环长度定义为构成回路的边的数目。长度长的环指的是,在因子图中构成回路的、从变量节点连接到校验节点的边的数目是很大的。所产生的因子图上的环的长度越大,LDPC码的性能变得越好。相比之下,当很多具有短长度的环存在于因子图当中时,LDPC码由于诸如出现误码平台的性能恶化而降低其纠错能力。也就是说,当许多具有短长度的环存在于因子图上的时候,关于属于具有短长度的环的特定节点的信息,从该特定节点开始,在少量迭代之后返回,。当迭代的数目增加时,信息更频繁地返回到相应的节点,使得信息不能正确地被更新,从而导致在LDPC码的纠错能力方面恶化。
图7是一个举例说明分块LDPC码的环结构的示意图,该分块LDPC码的奇偶校验矩阵由4个部分矩阵组成。在给出图7的描述之前,应当注意到,分块LDPC码是一个不仅考虑了高效编码,而且考虑了奇偶校验矩阵的高效存储和性能改善的一种新的LDPC码。该分块LDPC码也是一个通过总结规则的LDPC码的结构而扩展的LDPC码。在图7中举例说明的分块LDPC码的奇偶校验矩阵被划分为4个部分块,斜线代表具有1值的元素所处的位置,并且斜线部分之外的部分代表具有0值的元素所处的位置。此外,“P”代表与和图4一起描述的置换矩阵相同的置换矩阵。在这里,如与图4结合描述的,置换矩阵P是一个具有Ns×Ns大小的矩形矩阵,其中构成该置换矩阵P的Ns列中的每一列具有1的重量,并且构成该置换矩阵P的Ns行中的每一行具有1的重量。在这里,“重量”代表构成奇偶校验矩阵的元素当中具有非零值的元素。
为了分析在图7中举例说明的分块LDPC码的环结构,位于部分矩阵Pa的第i行中的具有1值的元素被定义为基准元素,并且位于第i行中的具有1值的元素将被称为“0点”。在此处,“部分矩阵”将对应于部分块的矩阵。所述0点位于部分矩阵Pa的第(i+a)列中。
部分矩阵Pb中位于与0点相同的行中的具有1值的元素将被称为“1点”。因为与0点相同的理由,1点位于部分矩阵Pb的第(i+b)列中。
接下来,在部分矩阵Pc中,位于与1点相同的列中的具有1值的元素将被称为“2点”。因为部分矩阵Pc是通过将单位矩阵I的各个列相对于模Ns向右移动c而获得的矩阵,所以该2点位于部分矩阵Pc的第(i+b-c)行中。
此外,在部分矩阵Pd中,位于与该2点相同的行中的具有1值的元素将被称为“3点”。该3点位于部分矩阵Pd的第(i+b-c+d)列中。
最后,在部分矩阵Pa中,位于与3点相同的列中的具有1值的元素将被称为“4点”。该4点位于该部分矩阵Pa的第(i+b-c+d-a)行中。
在图7中举例说明的LDPC码的环结构中,如果存在具有长度4的环,则0点和4点位于相同的位置。也就是说,0点和4点之间的关系是根据方程式(4)定义的
i ≅ i + b - c + d - a ( mod N s ) 或者 i + a ≅ i + b - c + d ( mod N s ) . . . . . . ( 4 )
等式(4)可以被改写为等式(5):
a+c≡b+d(modNs)            (5)
因此,当满足等式(5)的关系的时候,产生具有长度4的环。通常,当0点和4m点彼此相同的时候,给出i≡i+m(b-c+d-a)(mod Ns)的关系,并且满足以下在等式(6)中示出的关系。
m(a-b+c-d)≡0(modNs)         (6)
换句话说,如果对于给定的a、b、c和d,满足等式(6)的正整数当中具有最小值的正整数被定义为“m”,则在图7中举例说明的分块LDPC码的环结构中具有长度4m的环变为具有最小长度的环。
总之,如上所述,对于(a-b+c-d)≠0,如果满足gcd(Ns,a-b+c-d)=1,那么m=Ns。在此处,gcd(Ns,a-b+c-d)是用于计算整数Ns和a-b+c-d的最大公约数的函数。因此,具有长度4Ns的环变为具有最小长度的环。
即使当构成分块LDPC码的奇偶校验矩阵的块的数目超过4个时,即,当构成奇偶校验矩阵的部分矩阵的数目超过4个的时候,也可以应用对分块LDPC码的环的分析,其中,分块LDPC码结合图7加以描述。现在参考图8描述一个LDPC码的环结构,其中构成奇偶校验矩阵的部分矩阵的数目超过4个。
图8是一个举例说明分块LDPC码的环结构的示意图,该分块LDPC码的奇偶校验矩阵由6个部分矩阵组成。在图8中举例说明的分块LDPC码的奇偶校验矩阵由6个部分矩阵组成。如在图8中举例说明的,斜线代表具有1值的元素所处的位置,并且除斜线部分之外的部分代表具有0值的元素所处的位置。此外,“P”代表与结合图4描述的置换矩阵相同的置换矩阵。当以结合图7描述的方法来分析在图8中举例说明的LDPC码的环结构时,长度为6m的环成为具有最小长度的环。
通常,当0点和6m点首先彼此相同的时候,给出i≡i+m(b-c+d-e+f-a)(mod Ns)的关系,并且满足以下在等式(7)中示出的关系。
m(b-c+d-e+f-a)≡0(modNs)          (7)
换句话说,如果对于给定的a、b、c、d、e和f,满足等式(7)的正整数当中具有最小值的正整数被定义为“m”,则在图8中举例说明的分块LDPC码的环结构中具有6m长度的环变为具有最小长度的环。总之,如上所述,对于(a-b+c-d+e-f)≠0,如果满足gcd(Ns,a-b+c-d+e-f)=1,那么m=Ns。因此,具有长度6Ns的环变为具有最小长度的环。
对于如上所述的分块LDPC码,可以推断出以下的规则。
规则1
如果在分块LDPC码中存在长度为2l的环,应该满足等式(8)的条件。
a1+a3+a5+…+a2l-1≡a2+a4+a6+…+a2l(modNs)     (8)
在等式(8)中,ai(i=1,2,..,2l)表示长度为2l的环顺序经过的置换矩阵的指数(exponent)。也就是说,具有长度2l的环以
Figure BDA0000052345200000151
的顺序通过构成分块LDPC码的奇偶校验码的部分块。在这里,不是所有的ai值都必然地相互不同,并且相应的环可能重复地通过某些部分块。
规则2
将“m”定义为满足等式(9)的最小正整数。
m ( Σ i : odd a i - Σ j : even a j ) ≡ 0 ( mod N s ) , (1≤i,j≤2l)       (9)
在等式(9)中,ai代表被选择的置换矩阵的指数,使得在整个奇偶校验矩阵中形成基于块的环。如在规则1中描述的,不是所有的ai值都将必然地相互不同,并且相应的环可以重复地通过某些部分块。因此,部分矩阵
Figure BDA0000052345200000161
具有最小长度是2lm的环结构。
可以使用规则1和规则2容易地分析分块LDPC码的环结构的特征。例如,通过使用规则1和规则2,不仅有可能正确地确定在阵列码中分布多少最小长度为6的环,而且有可能容易地分析分块LDPC码的基于块的环(“块环”(block cycle))的结构特征,下面将对此进行描述。块环是用来调整环长度以形成奇偶校验矩阵的重要因素,并且块环将参考图9、规则1和规则2进行描述。
图9是一个举例说明分块LDPC码的块环结构的示意图。参考图9,构成分块LDPC码的块的每个被假定具有重量1,并且当块形成环的时候,称为“块环被形成”。图9从左侧开始举例说明了具有4个块的块环,具有6个块的块环,和具有8个块的块环。如在规则1和规则2中描述的,虽然形成了具有短长度的块环,但是如果适当地选择对应于构成块环的块的部分矩阵,则有可能执行控制操作,以使得在实际的奇偶校验矩阵中不产生具有短长度的环。但是,当多个块环在分块LDPC码中重复的时候,减小了在块环中实际的环的最小长度。因此,在实际的奇偶校验矩阵中产生了不希望的具有短长度的环。
现在参考图10、规则1和规则2进行描述当在分块LDPC码中多个块环重复时的问题,和当产生LDPC码的奇偶校验矩阵的时候,应该避免重复块环的理由。
图10是一个举例说明分块LDPC码的块环结构的示意图,其中奇偶校验矩阵的6个部分矩阵是重复的。可以根据在图10中举例说明的箭头,考虑以下相继的块顺序。
根据以上相继的块顺序,部分矩阵的指数不管Ns值如何,满足等式(10)。
a1-a2+a4-a3+a5-a6+a2-a1+a3-a4+a6-a5≡0(modNs)       (10)
如果等式(10)被施加于在规则2中描述的等式(9),那么m=1。因此,图10中举例说明的分块LDPC码存在一个块循环,其中6个部分矩阵重复,在这种情况下,即使选择构成该整个奇偶校验矩阵的任意的部分矩阵,该选择的部分矩阵始终包括一个具有长度12的环结构。也就是说,图10中举例说明的分块LDPC码存在一个块循环,其中6个部分矩阵是重复的,在这种情况下,奇偶校验矩阵的最小环长度被限制在最大值12。
图11是一个举例说明分块LDPC码的块环结构的示意图,其中奇偶校验矩阵的7个部分块是重复的。
在图11中,示出了一个分块LDPC码的块环结构,其中奇偶校验矩阵的7个部分块是重复的,并且可以根据在图11中举例说明的箭头,考虑以下相继的块顺序。
Figure BDA0000052345200000171
根据以上相继的块顺序,部分矩阵的指数无论Ns值如何满足等式(11)。
a1-a2+a4-a5+a7-a6+a2-a1+a3-a4+a6-a7+a5-a3≡0(modNs).....(11)
如果等式(11)被施加于在规则2中描述的等式(9),那么m=1。因此,图11中举例说明的块LDPC存在一个块循环,其中7个部分矩阵是重复的,在这种情况下,即使选择构成整个奇偶校验矩阵的任意的部分矩阵,该选择的部分矩阵始终包括一个具有长度14的环结构。也就是说,图11中举例说明的分块LDPC码存在一个块循环,其中奇偶校验矩阵的7个部分矩阵是重复的,在这种情况下,奇偶校验矩阵的最小环长度被限制在最大值14。
如上所述,如果在分块LDPC码中太多的块环在构成奇偶校验矩阵的块之间是重复的,则不管如何去选择奇偶校验矩阵的部分矩阵,在最大化环的最小长度方面都存在限制,从而导致在分块LDPC码的性能方面出现恶化。因此,在分块LDPC码中产生一个奇偶校验矩阵,使得产生尽可能少的块环,从而防止产生重复的块环。
接下来描述一种除了块环之外,还考虑到高效编码的用于产生分块LDPC码的奇偶校验矩阵的方法。
在本发明中,Richardson-Urbanke技术将被用作分块LDPC码的编码技术。因为该Richardson-Urbanke技术被用作编码技术,编码复杂性可以被最小化,使得奇偶校验矩阵的形式可以类似于全下三角矩阵的形式。
图12是一个举例说明具有全下三角矩阵形式的奇偶校验矩阵的示意图。在图12中举例说明的奇偶校验矩阵具有全下三角矩阵的形式,并且由信息部分和奇偶性部分组成。该信息部分代表奇偶校验矩阵的一部分,其在编码分块LDPC码的过程中映射为实际的信息字,并且该奇偶性部分代表该奇偶校验矩阵的一部分,其在编码分块LDPC码的过程中映射为实际的奇偶性。在该奇偶性部分中,如在图12中举例说明的,存在零矩阵和部分矩阵,以单位矩阵I作为它们的起始点,并且该部分矩阵具有全下三角的形式。
图13是一个举例说明其形式类似于全下三角矩阵形式的奇偶校验矩阵的示意图。在图13中举例说明的该奇偶校验矩阵不同于在奇偶性部分中具有在图12中举例说明的全下三角矩阵形式的奇偶校验矩阵。在图13中,该置换矩阵P的上标(或者指数)aij或者是0≤aij≤Ns-1,或者是aij=∞。带有上标aij=0的置换矩阵,即,置换矩阵P0代表一个单位矩阵INs×Ns,并且带有上标aij=∞的置换矩阵,即,置换矩阵P代表一个零矩阵。在图13中,m代表映射到信息部分的部分块的行的数目,并且q代表映射到奇偶性部分的部分块的列的数目。“i”指的是相应的置换矩阵位于奇偶校验矩阵的部分块的第i行中,并且“j”指的是相应的置换矩阵位于奇偶校验矩阵的部分块的第j列中。也就是说,
Figure BDA0000052345200000181
是位于第i行和第j列相交的部分块中的置换矩阵。
另外,映射到奇偶性部分的置换矩阵的上标ai、x、y代表置换矩阵的上标,但是,为了解释的方便起见,上标ai、x、y是通过不同格式的参考字母表示的,以区别于信息部分。也就是说,在图13中,Pa1至Pam也是置换矩阵,该置换矩阵Pa1至Pam位于奇偶性部分的对角线部分中。上标a1至am被顺序地标引。并且置换矩阵Px和Py也是置换矩阵,但是,为了解释的方便起见,该置换矩阵Px和Py是由不同格式的参考字母表示的,以区别于信息部分。
如果假设在图13中举例说明的奇偶校验矩阵的分块LDPC码的块长度为N,则该分块LDPC码的编码复杂性相对于块长度N线性地增长。
具有图13的奇偶校验矩阵的LDPC码的最大问题是,如果部分块的长度被定义为是Ns,则在分块LDPC码的因子图上产生度数始终是1的Ns个校验节点。在这里,该校验节点度数不会影响基于迭代译码的性能改善。因此,基于Richardson-Urbanke技术的标准LDPC码不包括具有度数1的校验节点。因此,为了设计一个奇偶校验矩阵,使得其能够实现高效编码,同时不包括具有度数1的校验节点,将图13的奇偶校验矩阵假设为一个基本奇偶校验矩阵。在由部分矩阵组成的图13的奇偶校验矩阵中,部分矩阵的选择是改善分块LDPC码性能的非常重要的因素,从而找到一个针对部分矩阵适宜的选择标准也变为非常重要的因素。
因此,当产生分块LDPC码的时候,考虑到以下的设计准则形成奇偶校验矩阵。
用于分块LDPC码的奇偶校验矩阵的设计准则
(1)奇偶性部分被形成为具有固定的形式。
奇偶性部分具有固定的形式指的是,其具有如在图16中所示的设置单位矩阵的构造,下面会对图16进行描述。
(2)具有低度数的部分矩阵先被顺序地选择。
在本发明中,部分矩阵的“度数”指的是在3和5之间的度数。此外,部分矩阵被安排为使得当具有低度数的部分矩阵被首先顺序地选择的时候,产生尽可能少的块环,并且在具有低度数的部分矩阵之间具有最小长度的环尽可能长。
(3)在具有低度数的部分矩阵全部被形成之后,顺序形成具有高度数的部分矩阵。当安排具有高度数的部分矩阵的时候,形成的具有最小长度的环尽可能长。
现在基于以上所述对于分块LDPC码的奇偶校验矩阵的设计准则,描述一种用于设计分块LDPC码的奇偶校验矩阵的方法。
为了简化设计分块LDPC码的奇偶校验矩阵的方法和用于编码分块LDPC码的方法,在图13中举例说明的奇偶校验矩阵被假设为是以如在图14中举例说明的6个部分矩阵形成的。
图14是一个举例说明图13的奇偶校验矩阵的示意图,其被分成6个部分块。参考图14,在图14中举例说明的分块LDPC码的奇偶校验矩阵被分成信息部分s、第一奇偶性部分p1和第二奇偶性部分p2。该信息部分s表示奇偶校验矩阵的一部分,在编码分块LDPC码的过程中映射到实际的信息字,类似于结合图12和13描述的信息部分,但是,为了解释的方便起见,该信息部分s由不同的参考字母表示。第一奇偶性部分p1和第二奇偶性部分p2表示奇偶校验矩阵的一部分,在编码分块LDPC码的过程中映射到实际的奇偶性,类似于结合图12和13描述的奇偶性部分,并且该奇偶性部分被分成两个部分。
部分矩阵A和C对应于信息部分s的部分块A和C,部分矩阵B和D对应于第一奇偶性部分p1的部分块B和D,并且部分矩阵T和E对应于第二奇偶性部分p2的部分块T和E。虽然在图14中该奇偶校验矩阵被分成7个部分块,应当注意到,“0”不是单独的部分块,并且因为对应于部分块T的部分矩阵T具有全下三角形式,因此基于对角线安排零矩阵的区域由“0”表示。稍后将参考图17描述使用信息部分s、第一奇偶性部分p1和第二奇偶性部分p2的部分矩阵简化编码方法的过程。
下面将在此处参考图15描述图14的部分矩阵。
图15是一个举例说明在图14中示出的部分矩阵B的转置矩阵、部分矩阵E、部分矩阵T和部分矩阵T的逆矩阵的示意图。参考图15,部分矩阵BT代表部分矩阵B的转置矩阵,并且部分矩阵T-1代表部分矩阵T的逆矩阵。该
Figure BDA0000052345200000201
代表
Figure BDA0000052345200000202
在图15中举例说明的置换矩阵,例如Pa1将是一个单位矩阵。如上所述,如果置换矩阵的上标、即a1是0,则Pa1将是一个单位矩阵。此外,如果置换矩阵的上标、即a1根据一个预定值增加,则该置换矩阵根据该预定值循环移位,因而该置换矩阵Pa1将是一个单位矩阵。
图17是一个举例说明根据本发明的一个实施例的用于产生分块LDPC码的奇偶校验矩阵的过程的流程图。在给出图17的描述之前,应当注意到,为了产生一个分块LDPC码,必须确定将要产生的分块LDPC码的码字(codeword)大小和编码速率,并且奇偶校验矩阵的大小必须根据该确定的码字大小和编码速率来确定。如果分块LDPC码的码字大小是由N表示的,并且编码速率是由R表示的,则奇偶校验矩阵的大小变为N(1-R)×N。实际上,在图17中举例说明的用于产生分块LDPC码的奇偶校验矩阵的过程仅仅被执行一次,因为奇偶校验矩阵是在最初产生并且在整个通信系统中使用,所以,使用所产生的奇偶校验矩阵。
参考图17,在步骤1711中,控制器将大小为N(1-R)×N的奇偶校验矩阵划分为总共p×q个块,包括在横轴中的p个块和在纵轴中的q个块,然后进入到步骤1713。因为该块的每个具有Ns×Ns的大小,所以奇偶校验矩阵由Ns×p列和Ns×q行组成。在步骤1713中,该控制器将从奇偶校验矩阵划分的p×q块分为信息部分s、第一奇偶性部分p1和第二奇偶性部分p2,然后进入到步骤1715和1721。
在步骤1715中,控制器根据用于保证分块LDPC码的良好性能的度数分布将信息部分s分割为非零块或者非零矩阵,和零块或者零矩阵,然后进入到步骤1717。因为已经在上面描述了用于保证分块LDPC码的良好性能的度数分布,所以在此处将省略其详细说明。在步骤1717中,控制器确定置换矩阵
Figure BDA0000052345200000211
以便如前所述最大化具有最小长度的块环,然后进入到步骤1719。所述最大化具有最小长度的块环是在具有低度数的块中非零矩阵部分进行的,所述具有低度数的块在根据用于保证分块LDPC码的良好性能的度数分布而确定的块当中,在这里,置换矩阵
Figure BDA0000052345200000212
将不仅考虑到信息部分s的块环,而且考虑到第一奇偶性部分p1和第二奇偶性部分p2的块环来确定。
在步骤1719中,控制器随机地确定具有低度数的块中非零矩阵部分中的置换矩阵
Figure BDA0000052345200000213
然后结束该过程。该具有低度数的块存在于根据用于保证分块LDPC码的良好性能的度数分布而确定的块当中。在这里,甚至当确定应用于具有高度数的块中的非零矩阵部分的置换矩阵
Figure BDA0000052345200000214
时,置换矩阵
Figure BDA0000052345200000215
也必须被确定为使得块环的最小环长度最大化,并且要不仅考虑信息部分s的块环,而且考虑第一奇偶性部分p1和第二奇偶性部分p2的块环来确定该置换矩阵
Figure BDA0000052345200000216
安排在该奇偶校验矩阵中的该置换矩阵的一个例子在图16中举例说明。
在步骤1721中,控制器将第一部分奇偶性p1和第二奇偶性部分p2划分为4个部分矩阵B、T、D和E,然后进入到步骤1723。在步骤1723中,该控制器不输入零矩阵,而是将置换矩阵Py
Figure BDA0000052345200000218
输入进构成部分矩阵B的部分块当中的2个部分块中,然后进入到步骤1725。参考图15,已经描述了用于不输入零矩阵,而是将置换矩阵Py输入进构成该部分矩阵B的部分块之中的2个部分块的方法。
在步骤1725中,控制器将单位矩阵I输入进部分矩阵T的对角线部分块中,将特定的置换矩阵
Figure BDA00000523452000002110
输入给部分矩阵T的对角线分量之下的第(i,i+1)部分块中,然后进入到步骤1727。已经参考图15描述了用于将单位矩阵I输入进部分矩阵T的对角线部分块中,和将特定的置换矩阵
Figure BDA00000523452000002111
输入给在部分矩阵T的对角线分量之下的第(i,i+1)部分块的方法。
在步骤1727中,控制器将部分矩阵Px输入给部分矩阵D,然后进入到步骤1729。在步骤1729中,控制器将置换矩阵
Figure BDA00000523452000002112
仅仅输入给在部分矩阵E中最后的部分块,然后结束该过程。参考图15,已经描述了用于将2个置换矩阵
Figure BDA00000523452000002113
仅仅输入给构成部分矩阵E的部分块当中最后的部分块的方法。
如果适当地形成分块LDPC码的奇偶校验矩阵中的部分矩阵B、部分矩阵D和部分矩阵E,则可以容易地控制用于分块LDPC码的编码过程。现在将进行描述为了容易地控制用于分块LDPC码的编码过程,而形成奇偶校验矩阵的部分矩阵B、部分矩阵D和部分矩阵E的过程。
当图13的奇偶校验矩阵按上述方式被划分为结合图14所述的部分矩阵的时候,可以考虑图15。
当码字矢量c被分成信息部分s、第一奇偶性部分p1和第二奇偶性部分p2(如在图14中举例说明的)的时候,该码字矢量c可以被分成信息字矢量s、第一奇偶性矢量p 1和第二奇偶性矢量p 2。在这种情况下,奇偶校验矩阵和码字矢量c的积可以表示为等式(12)和等式(13)。
A s ‾ T + B p ‾ 1 T + T p ‾ 2 T = 0 . . . . . . ( 12 )
( ET - 1 A + C ) s ‾ T + ( ET - 1 B + D ) p ‾ 1 T = 0 . . . . . . ( 13 )
在等式(12)中,T表示转置操作,并且在等式(13)中,与第一奇偶性矢量p 1相关的部分
Figure BDA0000052345200000223
可以通过以下计算:
p ‾ 1 T = φ - 1 ( ET - 1 A + C ) s ‾ T ( φ ≅ ET - 1 B + D ) . . . . . . ( 14 )
在等式(14)中,因为该分块LDPC码的编码复杂性与矩阵φ的大小的平方成比例,所以本发明将矩阵φ设置为单位矩阵I,矩阵φ用来计算第一奇偶性矢量p 1。通过以这种方法将矩阵φ设置为一个单位矩阵I,该分块LDPC码的编码复杂性被最小化。参考图15,现在将描述将该矩阵φ设置为单位矩阵I的过程。
置换矩阵
Figure BDA0000052345200000225
将被固定为单位矩阵I。在结合图15举例说明的部分矩阵T-1的部分块中,
Figure BDA0000052345200000226
部分表示矩阵
Figure BDA0000052345200000227
到矩阵
Figure BDA0000052345200000228
的积矩阵φ可以使用下面的等式(15)至等式(17)计算。
首先,在图15中,因为部分矩阵E中除一个部分块之外全部是零矩阵,所以部分矩阵E和部分矩阵T的逆矩阵T-1的积可以表示为部分矩阵T的逆矩阵T-1的最后行和该部分矩阵E的最后块的积,如等式(15)所示。
如果部分矩阵E和部分矩阵T的逆矩阵T-1的积乘以部分矩阵B,则该结果可以表示为在等式(16)中示出的
ET - 1 B = P a m P 2 ~ ( m - 1 ) + P a m P k ~ ( m - 1 ) P y . . . . . . ( 16 )
这里k是一个根据Py的位置确定的特定自然数。
当部分矩阵E和部分矩阵T的逆矩阵T-1的积乘以部分矩阵B(如在等式(16)中举例说明的)的时候,因为该部分矩阵B中除二个部分块之外全部是零矩阵,所以乘法运算仅仅对部分矩阵B中的所述二个部分块执行,从而简化计算。
如果
Figure BDA0000052345200000232
并且
Figure BDA0000052345200000233
那么
Figure BDA0000052345200000234
因此,矩阵φ变为一个单位矩阵I。等式(17)在下面简要地表示矩阵φ变为一个单位矩阵I的条件。
x ≡ a m + ( Σ i = 2 m - 1 a i ) ( mod N s ) , a m + ( Σ i = k m - 1 a i ) + y ≡ 0 ( mod N s ) . . . . . . ( 17 )
如参考等式(15)至等式(17)描述的,如果矩阵φ被设置为一个单位矩阵I,则用于分块LDPC码的编码过程可以在其复杂性方面被简化。
接下来,参考图18使用在本发明中设计的奇偶校验矩阵进行描述用于编码分块LDPC码的过程。
图18是一个举例说明根据本发明的一个实施例的用于编码分块LDPC码的过程的流程图。参考图18,在步骤1811中,控制器接收一个信息字矢量s,然后进入到步骤1813和1815。在此处将假设为了编码分块LDPC码而接收的信息字矢量s的长度是k。在步骤1813中,该控制器用奇偶校验矩阵的部分矩阵A矩阵乘该信息字矢量s(As),然后进入到步骤1817。
因为在部分矩阵A中存在的具有值1的元素的数目比在部分矩阵A中存在的具有值0的元素的数目少得多,所以可以以相对小数目的和积计算来实现信息字矢量s和奇偶校验矩阵的部分矩阵A的矩阵乘。此外,因为在部分矩阵A中具有值1的元素的位置可以以非零的块的位置和用于其块的置换矩阵的指数表示,所以与特定的奇偶校验矩阵相比较,该矩阵乘可以以简单的计算来执行。在步骤1815中,控制器以奇偶校验矩阵的部分矩阵C矩阵乘该信息字矢量s(Cs),然后进入到步骤1819。
在步骤1817,该控制器以矩阵ET-1矩阵乘信息字矢量s和奇偶校验矩阵的部分矩阵A的结果(ET-1As),然后进入到步骤1819。如上所述,因为在矩阵ET-1中具有值1的元素的数目是非常小的,所以只要相应的块的置换矩阵的指数是已知的,就可以简单地实现该矩阵乘。在步骤1819中,控制器通过相加ET-1As和Cs(p 1=ET-1As+Cs)来计算第一奇偶性矢量p 1,然后进入到步骤1821。在这里,该相加计算是异或(XOR)计算,其中当相同的比特被相加的时候,该相加结果变为“0”,并且当不同的比特被相加的时候,该相加结果变为“1”。也就是说,在到步骤1819为止的过程中,计算等式(14)中的第一奇偶性矢量p 1
在步骤1821中,该控制器将奇偶校验矩阵的部分矩阵B乘以第一奇偶性矢量p 1(Bp 1),将Bp 1和As(As+Bp 1)相加,然后进入到步骤1823。如与等式(12)结合描述的,如果信息字矢量s和第一奇偶性矢量p 1是已知的,则必须乘以奇偶校验矩阵中的部分矩阵T的逆矩阵T-1,以便计算第二奇偶性矢量p 2。因此,在步骤1823中,控制器以部分矩阵T的逆矩阵T-1乘以在步骤1821中计算的矢量(As+Bp 1),以便计算第二奇偶性矢量p 2(P 2=T-1(As+Bp 1)),然后进入到步骤1825。如上所述,只要要编码的分块LDPC码的信息字矢量s是已知的,第一奇偶性矢量p 1和第二奇偶性矢量p 2就可以被计算。因此,可以获得一个码字矢量。在步骤1825中,控制器传送借助于信息字矢量s、第一奇偶性矢量p 1和第二奇偶性矢量p 2产生的码字矢量c,然后结束该过程。
图19是举例说明根据本发明一个实施例的用于分块LDPC码的编码装置的内部结构的方框图。参考图19,用于分块LDPC码的编码装置由矩阵A乘法器1911、矩阵C乘法器1913、矩阵ET-1乘法器1915、第一加法器1917、矩阵B乘法器1919、第二加法器1921、矩阵T-1乘法器1923和开关1925、1927和1929组成。
当接收到输入信号,即,要以分块LDPC码编码的长度为k的信息字矢量s的时候,该接收的信息字矢量s被输入给开关1925、矩阵A乘法器1911和矩阵C乘法器1913中的每一个。矩阵A乘法器1911以整个奇偶校验矩阵的部分矩阵A乘以该信息字矢量s,并且将乘法运算结果输出给矩阵ET-1乘法器1915和第二加法器1921。矩阵C乘法器1913以整个奇偶校验矩阵的部分矩阵C乘以信息字矢量s,并且将乘法运算结果输出给第一加法器1917。矩阵ET-1乘法器1915以整个奇偶校验矩阵的部分矩阵ET-1乘以从矩阵A乘法器1911输出的信号,并且将乘法运算结果输出给第一加法器1917。
该第一加法器1917将从该矩阵ET-1乘法器1915输出的信号和从矩阵C乘法器1913输出的信号相加,并且将该相加结果输出到矩阵B乘法器1919和开关1927。在这里,第一加法器1917在逐比特的基础上执行异或计算。例如,当长度为3的矢量x=(x1,x2,x3)和长度为3的矢量y=(y1,y2,y3)被接收的时候,第一加法器1917异或该长度为3的矢量x=(x1,x2,x3)和该长度为3的矢量y=(y1,y2,y3),并且输出长度为3的矢量
Figure BDA0000052345200000251
在这里,该
Figure BDA0000052345200000252
计算代表异或(XOR)计算,其中,当相同的比特被相加的时候,相加结果变为“0”,并且当不同的比特被相加的时候,相加结果变为“1”。也就是说,从第一加法器1917输出的信号变为第一奇偶性矢量p 1
矩阵B乘法器1919以整个奇偶校验矩阵的部分矩阵B乘以从第一加法器1917输出的信号,或者第一奇偶性矢量p 1,并且将乘法运算结果输出给第二加法器1921。第二加法器1921将从矩阵B乘法器1919输出的信号和从矩阵A乘法器1911输出的信号相加,并且将该相加结果输出给矩阵T-1乘法器1923。第二加法器1921类似于加法器1917,将从矩阵B乘法器1919输出的信号和从矩阵A乘法器1911输出的信号异或,并且将结果输出给矩阵T-1乘法器1923。
矩阵T-1乘法器1923以部分矩阵T-1乘以从加法器1921输出的信号,并且将乘法运算结果输出给开关1929。在这里,矩阵T-1乘法器1923的输出变为第二奇偶性矢量p 2。开关1925、1927和1929仅仅在它们传送相应的信号时被接通。也就是说,在信息字矢量s的传送时间,开关1925被接通;在第一奇偶性矢量p 1的传送时间,开关1927被接通;并且在第二奇偶性矢量p 2的传送时间,开关1929被接通。
通过如上所述适当地选择整个奇偶校验矩阵的部分矩阵,对于ET-1的矩阵乘被相对地简化,从而便于对ET-1As T计算。此外,矩阵φ变为一个单位矩阵I,从而对于用于计算的φ-1的计算过程被省略。
如上所述,分块LDPC码根据其结构特性保证了存储器的高效率,该存储器用于存储与奇偶校验矩阵相关的信息,并且通过适当地选择奇偶校验矩阵中的部分矩阵而能够高效编码。但是,由于奇偶校验矩阵是在逐块的基础上产生的,因此随机性被降低。在随机性方面的降低可以导致在分块LDPC码的性能方面的降低。也就是说,因为如上所述不规则的分块LDPC码在性能方面比规则的分块LDPC码优越,因此选择整个奇偶校验矩阵中的部分矩阵在设计分块LDPC码中是非常重要的因素。
现在,参考图16,将进行用于产生分块LDPC码的方法的详细描述,当考虑到分块LDPC码的环特性时,该分块LDPC码呈现极好的性能,同时能够高效编码。
图16是一个举例说明根据本发明一个实施例的分块LDPC码的奇偶校验矩阵的示意图。参考图16,为了结构简单,该分块LDPC码的奇偶校验矩阵被设置为使得
Figure BDA0000052345200000261
Px=P1,和Py=P-1。在这种情况下,如上所述,矩阵φ变为一个单位矩阵I,从而能够高效编码。该奇偶校验矩阵的部分矩阵的块长度是Ns=31。因此,P-1=P30。因为对于在该奇偶校验矩阵中的所有列的块数是32,所以总块长度为32×31=992、编码速率为1/2的分块LDPC码的奇偶校验矩阵被产生。
因此,在图16中举例说明的分块LDPC码变为,该不规则的分块LDPC码以奇偶校验矩阵的每列为基础,由15个具有重量值2的块、12个具有重量值3的块和5个具有重量值11的块组成。因此,在图16中举例说明的分块LDPC码的度数分布可以表示为等式(18)
f2=15/32,f3=12/32,f11=5/32, f p 7 = 7 / 16 , f p 8 = 9 / 16 - - - ( 18 )
在等式(18)中,fi表示在该分块LDPC码的因子图上具有度数i的变量节点与所有的变量节点的比,并且fpi表示在该分块LDPC码的因子图上具有度数i的校验节点与所有的校验节点的比。例如,在分块LDPC码具有块长度Ns=32的情况下,在分块LDPC码的因子图上总共32个变量节点当中对应于15个变量节点的奇偶校验矩阵的列具有重量值2,对应于12个变量节点的奇偶校验矩阵的列具有重量值3,并且对应于5个变量节点的奇偶校验矩阵的列具有重量值11。即使是对于对应于校验节点的奇偶校验矩阵,重量也可以以与对于变量节点同样的方式进行考虑。在等式(18)中举例说明的度数分布近似具有n个理想阈值的LDPC码的度数分布。此外,在图16中举例说明的分块LDPC码的情况下,在具有度数2的节点和具有度数3的节点之间存在的环的最小长度是12,在所有的节点之间的环的最小长度是6。
接下来,参考图20,将进行描述根据本发明一个实施例的使用奇偶校验码解码分块LDPC码的过程。
图20是举例说明根据本发明一个实施例的用于分块LDPC码的解码装置的内部结构方框图。参考图20,用于分块LDPC码的解码装置由变量节点部分2000、第一加法器2015、去交织器2017、交织器2019、控制器2021、存储器2023、第二加法器2025、校验节点部分2050和硬判决单元2029组成。该变量节点部分2000由变量节点解码器2011和开关2013组成,并且该校验节点部分2050由校验节点解码器2027组成。
经无线电信道接收的接收信号被输入给变量节点部分2000中的变量节点解码器2011,并且变量节点解码器2011计算该接收信号的概率值,更新所计算的概率值,并且将更新的概率值输出给开关2013和第一加法器2015。变量节点解码器2011根据预先设置在用于分块LDPC码的解码装置中的奇偶校验矩阵来连接变量节点,并且执行更新计算,该更新计算的输入和输出值的数量与连接到变量节点的“1”的数目相同。连接到每个变量节点的“1”的数目与构成奇偶校验矩阵的每列的重量是相同的。因此,变量节点解码器2011的内在的计算根据构成奇偶校验矩阵的每列的重量而有所不同。
第一加法器2015接收从该变量节点解码器2011输出的信号以及在先前的迭代译码过程中交织器2019的输出信号,从当前解码过程中变量节点解码器2011所输出的信号中减去在先前的迭代译码中交织器2019的输出信号,并且将该相减结果输出给去交织器2017。如果解码过程是初始解码过程,则交织器2019的输出信号将被认为是“0”。
去交织器2017根据预定的技术去交织从第一加法器2015输出的信号,并且将去交织的信号输出给第二加法器2025和校验节点解码器2027。去交织器2017具有对应于奇偶校验矩阵的内部结构,因为对于与去交织器2017相对应的交织器2019的输入值来说,相应的输出值根据在该奇偶校验矩阵中具有值1的元素的位置而有所不同。
第二加法器2025接收在先前的迭代译码过程中校验节点解码器2027的输出信号以及去交织器2017的输出信号,从在先前的迭代译码过程中校验节点解码器2027的输出信号中减去去交织器2017的输出信号,并且将该减去结果输出给交织器2019。校验节点解码器2027根据预先地设置在用于分块LDPC码的解码装置中的奇偶校验矩阵来连接校验节点,并且执行具有与连接到校验节点的“1”的数量相同的输入和输出值的更新计算。连接到每个校验节点的“1”的数目与构成奇偶校验矩阵的每行的重量是相同的。因此,校验节点解码器2027的内在的计算根据构成奇偶校验矩阵的每行的重量而有所不同。
在该控制器2021的控制下,交织器2019根据预定的技术交织从第二加法器2025输出的信号,并且将交织的信号输出给加法器2015和变量节点解码器2011。控制器2021读取存储在存储器2023中的与交织技术相关的信息,并且根据读取的与交织技术相关的信息来控制交织器2019的交织技术。此外,如果解码过程是初始解码过程,则去交织器2017的输出信号将被认为是“0”。
通过重复地执行以上所述的过程,解码装置保证无差错高可靠性解码,并且在解码装置执行与预定的迭代次数相同数量的迭代译码之后,开关2013从第二加法器2015断开变量节点解码器2011,并且同时将变量节点解码器2011接入到硬判决单元2029,以致从变量节点解码器2011输出的信号被输出给硬判决单元2029。硬判决单元2029对从变量节点解码器2011输出的信号进行硬判决,并且输出硬判决的结果,并且硬判决单元2029的输出值变为最终解码的值。
如可以从上文的描述中了解的,本发明提出了一种在移动通信系统中具有最大化的最小环长度的分块LDPC码,从而最大化纠错能力并改善系统性能。此外,本发明产生了高效的奇偶校验矩阵,从而最小化分块LDPC码的编码复杂性。
虽然参考其的一些优选实施例已经示出和描述了本发明,那些本领域技术人员应理解,不脱离在所附的权利要求中所限定的本发明的精神和范围,可以在其中在形式和细节方面进行各种各样的变化。

Claims (16)

1.一种用于处理分块低密度奇偶校验(LDPC)码的系统,该系统包括:
解码装置,用于使用奇偶校验矩阵解码分块LDPC码,所述奇偶校验矩阵包括信息部分和奇偶性部分,所述奇偶性部分包括:
第一部分(B),包括多个第一置换矩阵,
第二部分(D),包括第二置换矩阵,
第三部分(T),包括多个单位矩阵(I)和多个第三置换矩阵,所述多个单位矩阵沿对角线安排在该第三部分内,所述多个第三置换矩阵安排在所述多个单位矩阵下方,以及
第四部分(E),包括第四置换矩阵。
2.如权利要求1所述的系统,其中,与所述第一部分(B)、第二部分(D)、第三部分(T)和第四部分(E)中的每一个相对应的置换矩阵被配置成使根据(E)(T-1)(B)+D的矩阵符合单位矩阵。
3.如权利要求1所述的系统,其中,所述第一置换矩阵之一被安排在所述第一部分(B)的第一块中,并且所述第四置换矩阵被安排在所述第四部分(E)的最后块中。
4.如权利要求1所述的系统,其中,与所述第一部分(B)、第二部分(D)、第三部分(T)和第四部分(E)中的每一个相对应的置换矩阵被配置成使得在分块LDPC码的因子图上最小环长度被最大化,并且重量值是不规则的。
5.一种由解码装置解码分块低密度奇偶校验(LDPC)码的方法,该方法包括:
使用奇偶校验矩阵解码分块LDPC码,该奇偶校验矩阵包括信息部分和奇偶性部分,所述奇偶性部分包括:
第一部分(B),包括多个第一置换矩阵,
第二部分(D),包括第二置换矩阵,
第三部分(T),包括多个单位矩阵(I)和多个第三置换矩阵,所述多个单位矩阵沿对角线安排在该第三部分内,所述多个第三置换矩阵安排在所述多个单位矩阵下方,以及
第四部分(E),包括第四置换矩阵。
6.如权利要求5所述的方法,其中,与所述第一部分(B)、第二部分(D)、第三部分(T)和第四部分(E)中的每一个相对应的置换矩阵被配置成使根据(E)(T-1)(B)+D的矩阵符合单位矩阵。
7.如权利要求5所述的方法,其中,所述第一置换矩阵之一被安排在所述第一部分(B)的第一块中,并且所述第四置换矩阵被安排在所述第四部分(E)的最后块中。
8.如权利要求5所述的方法,其中,与所述第一部分(B)、第二部分(D)、第三部分(T)和第四部分(E)中的每一个相对应的置换矩阵被配置成使得在分块LDPC码的因子图上最小环长度被最大化,并且重量值是不规则的。
9.一种用于处理分块低密度奇偶校验(LDPC)码的系统,该系统包括:
编码装置,用于使用奇偶校验矩阵编码分块LDPC码,该奇偶校验矩阵包括信息部分和奇偶性部分,该奇偶性部分包括:
第一部分(B),包括多个第一置换矩阵,
第二部分(D),包括第二置换矩阵,
第三部分(T),包括多个单位矩阵(I)和多个第三置换矩阵,所述多个单位矩阵沿对角线安排在该第三部分内,所述多个第三置换矩阵安排在所述多个单位矩阵下方,以及
第四部分(E),包括第四置换矩阵。
10.如权利要求9所述的系统,其中,与所述第一部分(B)、第二部分(D)、第三部分(T)和第四部分(E)中的每一个相对应的置换矩阵被配置成使根据(E)(T-1)(B)+D的矩阵符合单位矩阵。
11.如权利要求9所述的系统,其中,所述第一置换矩阵之一被安排在所述第一部分(B)的第一块中,并且所述第四置换矩阵被安排在所述第四部分(E)的最后块中。
12.如权利要求9所述的系统,其中,与所述第一部分(B)、第二部分(D)、第三部分(T)和第四部分(E)中的每一个相对应的置换矩阵被配置成使得在分块LDPC码的因子图上最小环长度被最大化,并且重量值是不规则的。
13.一种由编码装置编码分块低密度奇偶校验(LDCP)码的方法,该方法包括:
使用奇偶校验矩阵编码分块LDPC码,该奇偶校验矩阵包括信息部分和奇偶性部分,该奇偶性部分包括:
第一部分(B),包括多个第一置换矩阵,
第二部分(D),包括第二置换矩阵,
第三部分(T),包括多个单位矩阵(I)和多个第三置换矩阵,所述多个单位矩阵沿对角线安排在该第三部分内,所述多个第三置换矩阵安排在所述多个单位矩阵下方,以及
第四部分(E),包括第四置换矩阵。
14.如权利要求13所述的方法,其中,与所述第一部分(B)、第二部分(D)、第三部分(T)和第四部分(E)中的每一个相对应的置换矩阵被配置成使根据(E)(T-1)(B)+D的矩阵符合单位矩阵。
15.如权利要求13所述的方法,其中,所述第一置换矩阵之一被安排在所述第一部分(B)的第一块中,并且所述第四置换矩阵被安排在所述第四部分(E)的最后块中。
16.如权利要求13所述的方法,其中,与所述第一部分(B)、第二部分(D)、第三部分(T)和第四部分(E)中的每一个相对应的置换矩阵被配置成使得在分块LDPC码的因子图上最小环长度被最大化,并且重量值是不规则的。
CN201110074657.9A 2003-08-26 2004-08-26 处理分块低密度奇偶校验码的系统和方法 Active CN102164022B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020030059206A KR100809619B1 (ko) 2003-08-26 2003-08-26 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법
KR10-2003-0059206 2003-08-26
CN2004800236822A CN1836394B (zh) 2003-08-26 2004-08-26 在移动通信系统中编码/解码分块低密度奇偶校验码的装置和方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN2004800236822A Division CN1836394B (zh) 2003-08-26 2004-08-26 在移动通信系统中编码/解码分块低密度奇偶校验码的装置和方法

Publications (2)

Publication Number Publication Date
CN102164022A true CN102164022A (zh) 2011-08-24
CN102164022B CN102164022B (zh) 2017-05-10

Family

ID=36830604

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2004800236822A Active CN1836394B (zh) 2003-08-26 2004-08-26 在移动通信系统中编码/解码分块低密度奇偶校验码的装置和方法
CN201110074657.9A Active CN102164022B (zh) 2003-08-26 2004-08-26 处理分块低密度奇偶校验码的系统和方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN2004800236822A Active CN1836394B (zh) 2003-08-26 2004-08-26 在移动通信系统中编码/解码分块低密度奇偶校验码的装置和方法

Country Status (9)

Country Link
US (4) US7313752B2 (zh)
EP (1) EP1511177B1 (zh)
JP (2) JP4160617B2 (zh)
KR (1) KR100809619B1 (zh)
CN (2) CN1836394B (zh)
AU (1) AU2004302428B2 (zh)
CA (1) CA2531806C (zh)
RU (1) RU2316111C2 (zh)
WO (1) WO2005020500A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111492586A (zh) * 2017-12-15 2020-08-04 华为技术有限公司 Ldpc码的原模图扩展方法
CN112671504A (zh) * 2019-10-15 2021-04-16 普天信息技术有限公司 5g nr标准的ldpc编码的实现方法和装置

Families Citing this family (147)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4224777B2 (ja) * 2003-05-13 2009-02-18 ソニー株式会社 復号方法および復号装置、並びにプログラム
KR100809619B1 (ko) * 2003-08-26 2008-03-05 삼성전자주식회사 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법
KR101009785B1 (ko) * 2003-12-10 2011-01-19 삼성전자주식회사 불균일 반복 축적 부호 부호화/복호화 장치 및 방법
WO2005096510A1 (en) * 2004-04-02 2005-10-13 Nortel Networks Limited Ldpc encoders, decoders, systems and methods
AU2005239263B2 (en) * 2004-04-28 2008-12-04 Samsung Electronics Co., Ltd. Apparatus and method for coding/decoding block low density parity check code with variable block length
US7171603B2 (en) * 2004-05-06 2007-01-30 Motorola, Inc. Method and apparatus for encoding and decoding data
KR20050118056A (ko) * 2004-05-12 2005-12-15 삼성전자주식회사 다양한 부호율을 갖는 Block LDPC 부호를 이용한이동 통신 시스템에서의 채널부호화 복호화 방법 및 장치
US7526717B2 (en) * 2004-06-16 2009-04-28 Samsung Electronics Co., Ltd. Apparatus and method for coding and decoding semi-systematic block low density parity check codes
US7581157B2 (en) * 2004-06-24 2009-08-25 Lg Electronics Inc. Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system
US7395490B2 (en) 2004-07-21 2008-07-01 Qualcomm Incorporated LDPC decoding methods and apparatus
US7346832B2 (en) * 2004-07-21 2008-03-18 Qualcomm Incorporated LDPC encoding methods and apparatus
EP1779525A1 (en) * 2004-08-05 2007-05-02 Nokia Corporation Irregularly structured, low denisty parity check codes
US7143333B2 (en) * 2004-08-09 2006-11-28 Motorola, Inc. Method and apparatus for encoding and decoding data
JP4672016B2 (ja) * 2004-08-09 2011-04-20 エルジー エレクトロニクス インコーポレイティド 低密度パリティ検査行列を用いた符号化及び復号化方法
EP1626505B1 (en) * 2004-08-10 2011-03-09 Samsung Electronics Co., Ltd. Apparatus and method for encoding and decoding a block low density parity check code
US7506238B2 (en) 2004-08-13 2009-03-17 Texas Instruments Incorporated Simplified LDPC encoding for digital communications
US7516391B2 (en) * 2004-08-16 2009-04-07 Samsung Electronics Co., Ltd Apparatus and method for coding/decoding block low density parity check code with variable block length
KR100612047B1 (ko) * 2004-09-09 2006-08-14 한국전자통신연구원 성장 네트워크 모델을 이용한 엘디피시 부호의 형성방법
KR100684168B1 (ko) * 2004-12-09 2007-02-20 한국전자통신연구원 최적붙임방법을 이용한 다중 부호율 ldpc 부호의디자인 방법
KR101065693B1 (ko) * 2004-09-17 2011-09-19 엘지전자 주식회사 Ldpc 코드를 이용한 부호화, 복호화 방법 및 부호화또는 복호화를 위한 ldpc 코드 생성 방법
US7934140B2 (en) 2004-09-17 2011-04-26 Lg Electronics Inc. Method of encoding and decoding using LDPC code
KR20070062534A (ko) * 2004-10-01 2007-06-15 톰슨 라이센싱 저밀도 패리티 체크(ldpc) 디코더
WO2006039801A1 (en) * 2004-10-12 2006-04-20 Nortel Networks Limited System and method for low density parity check encoding of data
US7752521B2 (en) * 2004-10-12 2010-07-06 Nortel Networks Limited Low density parity check (LDPC) code
KR100913876B1 (ko) * 2004-12-01 2009-08-26 삼성전자주식회사 저밀도 패리티 검사 부호의 생성 방법 및 장치
CN100583651C (zh) * 2004-12-22 2010-01-20 Lg电子株式会社 用于使用信道代码解码的装置和方法
CN100486150C (zh) * 2005-01-23 2009-05-06 中兴通讯股份有限公司 基于非正则低密度奇偶校验码的编译码器及其生成方法
KR20060097503A (ko) 2005-03-11 2006-09-14 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널인터리빙/디인터리빙 장치 및 그 제어 방법
KR20060108959A (ko) * 2005-04-13 2006-10-19 삼성전자주식회사 블록단위의 저밀도 패리티 체크 행렬 생성 방법 및 장치와그 기록매체
JP4617985B2 (ja) * 2005-04-25 2011-01-26 ソニー株式会社 符号装置および符号化方法
US7673225B2 (en) 2005-06-21 2010-03-02 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving data in a communication system using structured low density parity check code
US7499490B2 (en) * 2005-06-24 2009-03-03 California Institute Of Technology Encoders for block-circulant LDPC codes
KR20060135451A (ko) * 2005-06-25 2006-12-29 삼성전자주식회사 저밀도 패리티 검사 행렬 부호화 방법 및 장치
KR100941680B1 (ko) 2005-07-01 2010-02-12 삼성전자주식회사 준순환 저밀도 패리티 검사 부호의 생성 방법 및 장치
US7657816B2 (en) * 2005-07-13 2010-02-02 Leanics Corporation Low-complexity hybrid LDPC code encoder
US7559008B1 (en) * 2005-10-03 2009-07-07 Maxtor Corporation Nested LDPC encoders and decoder
KR100809616B1 (ko) 2005-10-19 2008-03-05 삼성전자주식회사 가변 블록 길이를 가지는 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법
KR20070063851A (ko) 2005-12-15 2007-06-20 삼성전자주식회사 패리티 검사 행렬, 패리티 검사 행렬 생성 방법, 인코딩방법 및 에러 정정 장치
JP4558638B2 (ja) * 2005-12-15 2010-10-06 富士通株式会社 符号器および復号器
US8151161B2 (en) * 2005-12-27 2012-04-03 Lg Electronics Inc. Apparatus and method for decoding using channel code
US8271850B2 (en) * 2005-12-29 2012-09-18 Intel Corporation Fast low-density parity-check code encoder
CN100438394C (zh) * 2006-01-12 2008-11-26 北京大学 非规则置换矩阵ldpc码的构造方法及装置
US20070180344A1 (en) * 2006-01-31 2007-08-02 Jacobsen Eric A Techniques for low density parity check for forward error correction in high-data rate transmission
KR100899738B1 (ko) 2006-02-02 2009-05-27 삼성전자주식회사 노드 메모리 기반의 ldpc 복호기 및 복호방법
US20070198905A1 (en) * 2006-02-03 2007-08-23 Nokia Corporation Transmitter for a communications network
KR100933139B1 (ko) 2006-02-22 2009-12-21 삼성전자주식회사 통신 시스템에서 신호 수신 장치 및 방법
US7657821B1 (en) * 2006-05-09 2010-02-02 Cisco Technology, Inc. Error detecting code for multi-character, multi-lane, multi-level physical transmission
KR101444458B1 (ko) * 2006-06-15 2014-09-30 삼성전자주식회사 통신 시스템에서 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법
KR101154995B1 (ko) 2006-07-14 2012-06-15 엘지전자 주식회사 Ldpc 부호화를 수행하는 방법
JP4856605B2 (ja) * 2006-08-31 2012-01-18 パナソニック株式会社 符号化方法、符号化装置、及び送信装置
US8108758B2 (en) 2006-09-22 2012-01-31 Mcgill University Stochastic decoding of LDPC codes
KR101311634B1 (ko) * 2006-10-09 2013-09-26 엘지전자 주식회사 무선 통신 시스템의 부호어 생성 방법
WO2008059160A2 (fr) * 2006-11-13 2008-05-22 France Telecom Codage et decodage d'un signal de donnees en fonction d'un code correcteur
US8117514B2 (en) 2006-11-13 2012-02-14 Qualcomm Incorporated Methods and apparatus for encoding data in a communication network
KR101433375B1 (ko) * 2006-12-04 2014-08-29 삼성전자주식회사 통신 시스템에서 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법
US7913149B2 (en) * 2006-12-20 2011-03-22 Lsi Corporation Low complexity LDPC encoding algorithm
RU2443053C2 (ru) * 2007-01-24 2012-02-20 Квэлкомм Инкорпорейтед Кодирование и декодирование ldpc пакетов переменных размеров
US8261155B2 (en) * 2007-03-09 2012-09-04 Qualcomm Incorporated Methods and apparatus for encoding and decoding low density parity check (LDPC) codes
KR100975696B1 (ko) 2007-04-05 2010-08-12 삼성전자주식회사 통신 시스템에서 부호화 장치 및 방법
JP4788650B2 (ja) * 2007-04-27 2011-10-05 ソニー株式会社 Ldpc復号装置およびその復号方法、並びにプログラム
KR20080102902A (ko) * 2007-05-22 2008-11-26 삼성전자주식회사 가변 부호화율을 가지는 ldpc 부호 설계 방법, 장치 및그 정보 저장 매체
US8117523B2 (en) * 2007-05-23 2012-02-14 California Institute Of Technology Rate-compatible protograph LDPC code families with linear minimum distance
TW200906073A (en) * 2007-07-31 2009-02-01 Univ Nat Chiao Tung Calculation method applied to Low Density Parity check Code (LDPC) decoder and circuit thereof
US8196010B1 (en) * 2007-08-17 2012-06-05 Marvell International, Ltd. Generic encoder for low-density parity-check (LDPC) codes
JP4487212B2 (ja) * 2007-10-19 2010-06-23 ソニー株式会社 復号装置および方法、送受信システム、受信装置および方法、並びにプログラム
US8301963B2 (en) * 2007-10-23 2012-10-30 Spansion Llc Low-density parity-check code based error correction for memory device
US8219876B2 (en) 2007-10-24 2012-07-10 Core Wireless Licensing, S.a.r.l. Method, apparatus, computer program product and device providing semi-parallel low density parity check decoding using a block structured parity check matrix
KR101447751B1 (ko) * 2007-11-19 2014-10-13 삼성전자주식회사 블록 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서패리티 검사 행렬 생성 장치 및 방법
TWI390856B (zh) * 2007-11-26 2013-03-21 Sony Corp Data processing device and data processing method
US8473824B1 (en) * 2008-09-08 2013-06-25 Marvell International Ltd. Quasi-cyclic low-density parity-check (QC-LDPC) encoder
KR101502624B1 (ko) * 2007-12-06 2015-03-17 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널 부호화/복호화 방법 및 장치
RU2440669C1 (ru) 2007-12-13 2012-01-20 Нек Корпорейшн Устройство декодирования, устройство хранения данных, система обмена данными и способ декодирования
KR100949519B1 (ko) * 2007-12-18 2010-03-24 한국전자통신연구원 낮은 복잡도 및 고속 복호를 위한 패리티 검사행렬 생성방법과, 그를 이용한 저밀도 패리티 검사 부호의 부호화장치 및 그 방법
KR101445080B1 (ko) * 2008-02-12 2014-09-29 삼성전자 주식회사 하이브리드 자동 반복 요구 방식을 사용하는 통신 시스템에서 신호 송신 방법 및 장치
CN101946414B (zh) * 2008-02-18 2013-08-14 三星电子株式会社 用于编码和解码使用低密度奇偶校验检查码的通信系统中的信道的设备和方法
KR101503058B1 (ko) * 2008-02-26 2015-03-18 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서의 채널 부호화/복호화 방법 및 장치
CN101272223B (zh) * 2008-04-30 2011-04-20 中兴通讯股份有限公司 一种低密度生成矩阵码的译码方法及装置
CN101286819B (zh) * 2008-05-07 2010-05-12 中兴通讯股份有限公司 一种数据接收方法及装置
KR20090117580A (ko) * 2008-05-08 2009-11-12 엘지전자 주식회사 부호어의 생성 방법
US8370711B2 (en) 2008-06-23 2013-02-05 Ramot At Tel Aviv University Ltd. Interruption criteria for block decoding
US20110154151A1 (en) * 2008-07-04 2011-06-23 Mitsubishi Electric Corporation Check matrix creation device, check matrix creation method, check matrix creation program, transmitter, receiver, and communication system
WO2010006430A1 (en) * 2008-07-15 2010-01-21 The Royal Institution For The Decoding of linear codes with parity check matrix
US8443033B2 (en) * 2008-08-04 2013-05-14 Lsi Corporation Variable node processing unit
CN101686061A (zh) * 2008-09-27 2010-03-31 松下电器产业株式会社 构造低密度奇偶校验码的方法及发送/接收装置和系统
JP5320964B2 (ja) * 2008-10-08 2013-10-23 ソニー株式会社 サイクリックシフト装置、サイクリックシフト方法、ldpc復号装置、テレビジョン受像機、及び、受信システム
US8612823B2 (en) * 2008-10-17 2013-12-17 Intel Corporation Encoding of LDPC codes using sub-matrices of a low density parity check matrix
TWI383617B (zh) * 2008-10-31 2013-01-21 Ind Tech Res Inst 具排列架構之無線通訊方法及系統
CN101442318B (zh) * 2008-11-06 2012-04-25 上海交通大学 基于近似下三角结构校验矩阵的低时延ira码编码器
ES2559637T3 (es) 2009-02-06 2016-02-15 Marvell Hispania S.L. Codificación LDPC cuasi-cíclica
JP4898858B2 (ja) * 2009-03-02 2012-03-21 パナソニック株式会社 符号化器、復号化器及び符号化方法
JP5344228B2 (ja) * 2009-03-26 2013-11-20 ソニー株式会社 受信装置及び方法、プログラム、並びに受信システム
US8407555B2 (en) * 2009-03-30 2013-03-26 Broadcom Corporation LDPC codes robust to non-stationary narrowband ingress noise
US8464123B2 (en) 2009-05-07 2013-06-11 Ramot At Tel Aviv University Ltd. Matrix structure for block encoding
TWI427936B (zh) * 2009-05-29 2014-02-21 Sony Corp 接收設備,接收方法,程式,及接收系統
US8423861B2 (en) * 2009-11-19 2013-04-16 Lsi Corporation Subwords coding using different interleaving schemes
US8352847B2 (en) * 2009-12-02 2013-01-08 Lsi Corporation Matrix vector multiplication for error-correction encoding and the like
US8572463B2 (en) * 2010-02-01 2013-10-29 Sk Hynix Memory Solutions Inc. Quasi-cyclic LDPC encoding and decoding for non-integer multiples of circulant size
US8448041B1 (en) * 2010-02-01 2013-05-21 Sk Hynix Memory Solutions Inc. Multistage LDPC encoding
US8443257B1 (en) 2010-02-01 2013-05-14 Sk Hynix Memory Solutions Inc. Rate-scalable, multistage quasi-cyclic LDPC coding
US8504894B1 (en) 2010-03-04 2013-08-06 Sk Hynix Memory Solutions Inc. Systematic encoding for non-full row rank, quasi-cyclic LDPC parity check matrices
US8527831B2 (en) * 2010-04-26 2013-09-03 Lsi Corporation Systems and methods for low density parity check data decoding
US8443249B2 (en) * 2010-04-26 2013-05-14 Lsi Corporation Systems and methods for low density parity check data encoding
US8381065B2 (en) * 2010-10-01 2013-02-19 Nec Laboratories America, Inc. Modified progressive edge-growth LDPC codes for ultra-high-speed serial optical transport
JP5434890B2 (ja) * 2010-11-18 2014-03-05 株式会社Jvcケンウッド 符号化装置、符号化方法、プログラム
KR20120071511A (ko) * 2010-12-23 2012-07-03 한국전자통신연구원 이동통신 시스템의 데이터 레이트 매칭 방법 및 장치
KR101702358B1 (ko) * 2011-01-06 2017-02-03 삼성전자주식회사 저밀도 패리티 검사 코드를 사용하는 통신 시스템에서의 채널 부호화/복호화 방법 및 장치
KR20120088369A (ko) * 2011-01-31 2012-08-08 삼성전자주식회사 방송 및 통신시스템에서 송?수신 방법 및 장치
KR101772008B1 (ko) 2011-03-03 2017-09-05 삼성전자주식회사 통신 및 방송시스템에서 송수신 방법 및 장치
EP3547550A1 (en) 2011-03-30 2019-10-02 Samsung Electronics Co., Ltd. Apparatus and method for mapping and demapping signals in a communication system using a low density parity check code
KR101865068B1 (ko) * 2011-03-30 2018-06-08 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 시스템에서 신호 맵핑/디맵핑 장치 및 방법
JP5637393B2 (ja) * 2011-04-28 2014-12-10 ソニー株式会社 データ処理装置、及び、データ処理方法
EP2525497A1 (en) * 2011-05-18 2012-11-21 Panasonic Corporation Bit-interleaved coding and modulation (BICM) with quasi-cyclic LDPC codes
DE102011078645A1 (de) * 2011-07-05 2013-01-10 Robert Bosch Gmbh Verfahren zum sicheren Prüfen eines Codes
CN102255693B (zh) * 2011-07-18 2014-01-29 国网信息通信有限公司 用于电力线通信的纠错编码方法
KR101791477B1 (ko) * 2011-10-10 2017-10-30 삼성전자주식회사 통신/방송 시스템에서 데이터 송수신 장치 및 방법
KR101922990B1 (ko) * 2011-11-11 2018-11-28 삼성전자주식회사 멀티미디어 통신 시스템에서 준순환 저밀도 패리티 검사 부호 송/수신 장치 및 방법
JP5665725B2 (ja) * 2011-12-13 2015-02-04 株式会社東芝 符号化装置及びこれを用いた半導体メモリシステム
KR101685010B1 (ko) * 2012-06-01 2016-12-13 한국전자통신연구원 지상파 클라우드 방송을 위한 ldpc 부호
JP5774237B2 (ja) * 2012-11-05 2015-09-09 三菱電機株式会社 誤り訂正符号化方法および誤り訂正符号化装置
CN104981978B (zh) * 2013-02-13 2017-12-08 高通股份有限公司 使用准循环构造和穿孔以实现高速率、高并行性和低差错本底的ldpc设计
US8930792B2 (en) * 2013-02-14 2015-01-06 Lsi Corporation Systems and methods for distributed low density parity check decoding
WO2014178299A1 (ja) * 2013-05-02 2014-11-06 ソニー株式会社 データ処理装置、及びデータ処理方法
KR102240220B1 (ko) * 2013-05-02 2021-04-13 소니 주식회사 데이터 처리 장치 및 데이터 처리 방법
BR112015027135B1 (pt) * 2013-05-02 2022-02-15 Sony Corporation Dispositivo e método de processamento de dados
US20160173229A1 (en) * 2013-08-05 2016-06-16 Lg Electronics Inc. Method and device for receiving signals in wireless access system
US9104589B1 (en) * 2013-10-16 2015-08-11 L-3 Communications Corp. Decoding vectors encoded with a linear block forward error correction code having a parity check matrix with multiple distinct pattern regions
KR102254102B1 (ko) * 2015-01-23 2021-05-20 삼성전자주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
US10404284B1 (en) 2015-07-21 2019-09-03 L-3 Communications Corp. Parallel-to-parallel conversion and reordering of a block of data elements
US10382064B2 (en) * 2015-10-13 2019-08-13 SK Hynix Inc. Efficient LDPC encoder for irregular code
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) codes
US10129178B1 (en) 2015-12-02 2018-11-13 L-3 Communications Corp. Combining and processing as a whole portions of a ordered segment of data elements split between two communications channels
US10635909B2 (en) * 2015-12-30 2020-04-28 Texas Instruments Incorporated Vehicle control with efficient iterative triangulation
WO2017123273A1 (en) * 2016-01-14 2017-07-20 Intel IP Corporation Informationally efficient error correction coding
JP6699738B2 (ja) * 2016-01-29 2020-05-27 日本電気株式会社 情報処理装置、情報処理方法、及び、コンピュータプログラム
US10469104B2 (en) 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
EP3487095B1 (en) * 2016-07-15 2021-03-31 Sharp Kabushiki Kaisha Transmission device, reception device and communication method
TWI602188B (zh) * 2017-01-03 2017-10-11 慧榮科技股份有限公司 用來於記憶裝置中進行資料管理之方法以及記憶裝置及其控制器
US10340949B2 (en) * 2017-02-06 2019-07-02 Qualcomm Incorporated Multiple low density parity check (LDPC) base graph design
US10484134B2 (en) 2017-03-30 2019-11-19 Samsung Electronics Co., Ltd. Apparatus and method for channel encoding/decoding in communication or broadcasting system
KR102348466B1 (ko) * 2017-03-30 2022-01-10 삼성전자 주식회사 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치
CN110535474B (zh) 2017-05-05 2023-06-06 华为技术有限公司 信息处理的方法、通信装置
US10312939B2 (en) 2017-06-10 2019-06-04 Qualcomm Incorporated Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code
KR102194029B1 (ko) 2017-06-15 2020-12-22 후아웨이 테크놀러지 컴퍼니 리미티드 정보 프로세싱 방법 및 통신 장치
CN109150197B (zh) 2017-06-27 2024-05-14 华为技术有限公司 信息处理的方法、装置和通信设备
KR102523059B1 (ko) * 2018-04-18 2023-04-19 에스케이하이닉스 주식회사 에러 정정 회로 및 그것을 포함하는 메모리 시스템
US10886944B2 (en) * 2018-09-24 2021-01-05 National Chiao Tung University Low-density parity-check code scaling method
RU2708349C1 (ru) * 2019-06-03 2019-12-05 Акционерное общество "Концерн "Созвездие" Способ передачи данных на основе кодов с низкой плотностью проверок на четность

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0156440B1 (en) 1984-03-24 1990-01-24 Koninklijke Philips Electronics N.V. An information transmission method with error correction for user words, an error correcting decoding method for such user words, an apparatus for information transmission for use with the method, a device for information decoding for use with the method and an apparatus for use with such device
US6304991B1 (en) 1998-12-04 2001-10-16 Qualcomm Incorporated Turbo code interleaver using linear congruential sequence
FR2799592B1 (fr) 1999-10-12 2003-09-26 Thomson Csf Procede de construction et de codage simple et systematique de codes ldpc
DE60040805D1 (de) * 1999-12-20 2008-12-24 Research In Motion Ltd Hybrid-wiederholungsaufforderungsystem und -verfahren
US6539367B1 (en) * 2000-05-26 2003-03-25 Agere Systems Inc. Methods and apparatus for decoding of general codes on probability dependency graphs
KR20030036227A (ko) 2000-06-16 2003-05-09 어웨어, 인크. Ldpc 코드형 변조를 위한 시스템 및 방법
US7072417B1 (en) * 2000-06-28 2006-07-04 Marvell International Ltd. LDPC encoder and method thereof
US7000177B1 (en) * 2000-06-28 2006-02-14 Marvell International Ltd. Parity check matrix and method of forming thereof
US6567465B2 (en) * 2001-05-21 2003-05-20 Pc Tel Inc. DSL modem utilizing low density parity check codes
US6633856B2 (en) * 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US6938196B2 (en) 2001-06-15 2005-08-30 Flarion Technologies, Inc. Node processors for use in parity check decoders
US6789227B2 (en) * 2001-07-05 2004-09-07 International Business Machines Corporation System and method for generating low density parity check codes using bit-filling
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
KR100848779B1 (ko) 2001-08-27 2008-07-28 엘지전자 주식회사 반복 복호기에서 두 가지 레벨 이상의 복호능력 표시방법
US7178080B2 (en) * 2002-08-15 2007-02-13 Texas Instruments Incorporated Hardware-efficient low density parity check code for digital communications
US6961888B2 (en) * 2002-08-20 2005-11-01 Flarion Technologies, Inc. Methods and apparatus for encoding LDPC codes
CN1185796C (zh) * 2002-11-15 2005-01-19 清华大学 改进的非规则低密度奇偶校验码纠错译码方法
US7162684B2 (en) * 2003-01-27 2007-01-09 Texas Instruments Incorporated Efficient encoder for low-density-parity-check codes
JP4163023B2 (ja) * 2003-02-28 2008-10-08 三菱電機株式会社 検査行列生成方法および検査行列生成装置
US7139959B2 (en) * 2003-03-24 2006-11-21 Texas Instruments Incorporated Layered low density parity check decoding for digital communications
KR100809619B1 (ko) * 2003-08-26 2008-03-05 삼성전자주식회사 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법
JP4167276B2 (ja) * 2006-06-23 2008-10-15 株式会社住化分析センター 導電体の溶断試験方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111492586A (zh) * 2017-12-15 2020-08-04 华为技术有限公司 Ldpc码的原模图扩展方法
US11309917B2 (en) 2017-12-15 2022-04-19 Huawei Technologies Co., Ltd. Base parity-check matrices for LDPC codes that have subsets of orthogonal rows
CN112671504A (zh) * 2019-10-15 2021-04-16 普天信息技术有限公司 5g nr标准的ldpc编码的实现方法和装置

Also Published As

Publication number Publication date
RU2006109470A (ru) 2006-07-10
US7313752B2 (en) 2007-12-25
CA2531806C (en) 2014-04-08
AU2004302428B2 (en) 2008-02-07
US20110167315A1 (en) 2011-07-07
EP1511177B1 (en) 2018-06-06
CN102164022B (zh) 2017-05-10
JP5219552B2 (ja) 2013-06-26
KR20050021108A (ko) 2005-03-07
CN1836394A (zh) 2006-09-20
US20140344639A1 (en) 2014-11-20
US7962828B2 (en) 2011-06-14
JP2007503755A (ja) 2007-02-22
EP1511177A3 (en) 2006-07-26
AU2004302428A1 (en) 2005-03-03
RU2316111C2 (ru) 2008-01-27
CA2531806A1 (en) 2005-03-03
JP2008172824A (ja) 2008-07-24
US20050050435A1 (en) 2005-03-03
JP4160617B2 (ja) 2008-10-01
CN1836394B (zh) 2011-05-25
US8719683B2 (en) 2014-05-06
WO2005020500A1 (en) 2005-03-03
KR100809619B1 (ko) 2008-03-05
US9319068B2 (en) 2016-04-19
US20070283221A1 (en) 2007-12-06
EP1511177A2 (en) 2005-03-02

Similar Documents

Publication Publication Date Title
CN1836394B (zh) 在移动通信系统中编码/解码分块低密度奇偶校验码的装置和方法
CN1947368B (zh) 对具有可变块长度的块低密度奇偶校验码编码/解码的设备和方法
CN100568755C (zh) 用于编码和解码具有可变编码率的块低密度奇偶校验码的装置和方法
CN107370489B (zh) 结构化ldpc码的数据处理方法及装置
CN1993892B (zh) 用于编码和解码块低密度奇偶校验码的装置和方法
US7814393B2 (en) Apparatus and method for coding/decoding block low density parity check code with variable block length
EP2169836B1 (en) Low-density parity check convolution code (ldpc-cc) encoder and ldpc-cc decoder
CN1993917B (zh) 编码/译码具有可变块长度的块低密奇偶校验码的装置和方法
CN101785189B (zh) 编码装置和解码装置
EP1850484A1 (en) Basic matrix based on irregular ldcp, codec and generation method thereof
WO2007145491A1 (en) Apparatus and method of encoding/decoding block low density parity check codes in a communication system
CN101453297A (zh) 低密度生成矩阵码的编码方法和装置、及译码方法和装置
KR101267756B1 (ko) 가변 부호화율 불규칙 반복 다상 누산 부호화 및 복호화 방법과 이를 위한 장치
KR20060016061A (ko) 가변 블록 길이를 가지는 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법
KR101267654B1 (ko) 가변 부호어 길이를 지원하는 불규칙 반복 다상 누산 부호화 및 복호화 방법과 이를 위한 장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant