CN101023587A - 使用ldpc码编码和解码的方法及其装置 - Google Patents
使用ldpc码编码和解码的方法及其装置 Download PDFInfo
- Publication number
- CN101023587A CN101023587A CNA2005800315458A CN200580031545A CN101023587A CN 101023587 A CN101023587 A CN 101023587A CN A2005800315458 A CNA2005800315458 A CN A2005800315458A CN 200580031545 A CN200580031545 A CN 200580031545A CN 101023587 A CN101023587 A CN 101023587A
- Authority
- CN
- China
- Prior art keywords
- matrix
- basic
- permutation
- row
- permutation matrix
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/116—Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/033—Theoretical methods to calculate these checking codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/118—Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
- H03M13/1185—Parity 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
Abstract
本发明公开了一种使用LDPC码编码/解码的方法及其装置,通过其可以节省用于存储奇偶校验矩阵的存储器。本发明包括通过将包括定义置换矩阵的置换类型的基矩阵扩展为至少一个元素来产生奇偶校验矩阵,其中该置换矩阵是从置换至少一个基置换矩阵的行和列的至少一个的顺序或者转动至少一个基置换矩阵,和使用该奇偶校验矩阵编码或者解码输入数据来产生的。
Description
技术领域
本发明涉及编码/解码方法,特别涉及使用LDPC码的编码/解码的方法,产生用于编码或者解码的LDPC码的方法以及用于编码和解码的装置。虽然本发明适用于宽的应用范围,其尤其适用于节省用于存储使用LDPC(低密度奇偶校验)码编码和解码的方法需要的奇偶校验矩阵的存储器,以及用于提高编码或者解码性能。
背景技术
通常地,编码是不管由信号失真、损失等等所引起的误差,当发送侧经由通信信道发送数据时,发送侧对于接收侧执行数据处理以恢复原始数据的处理过程。并且,解码是接收侧将编码的发送数据恢复为原始数据的处理过程。
近来,很多的注意力放在使用LPDC码的编码方法上。该LDPC码是具有低密度的线性分组码(linear block code),因为奇偶校验矩阵H的大部分元素是零,其是由加拉格(Gallager)在1962年提出的。由于在当时技术上的困难,很难实现非常复杂的LDPC码。但是,该LDPC码被在1995年被重新考虑,使得其优越性能被验证。因此,进行了许多的努力去研究和开发LPDC码。(参考资料:[1]RobertG.Gallager,“Low-Density Parity-Check Codes”,MIT印刷,1963年9月15日。[2]D.J.C.Mackay,基于非常稀少的矩阵的很好的纠错码,IEEE会议录“信息理论”,IT-45,pp.399-431(1999))。
由于LDPC码的奇偶校验矩阵的“1”的数目是非常少的,在很大的块尺寸的情况下,允许经由重复解码来解码LDPC的奇偶校验矩阵。如果块尺寸变得非常地大,则该LDPC码的奇偶校验矩阵示出接近于类似turbo码的香农(Shannon)的信道容量限制的性能。
LDPC码可以通过(n-k)×n的奇偶校验矩阵H来解释。并且,对应于奇偶校验矩阵H的生成矩阵G可以通过等式1找到。
[等式1]
H·G=0
在使用LDPC码的编码/解码方法中,发送侧通过等式2使用具有等式1与奇偶校验矩阵H关系式的生成矩阵G来编码输入数据。
[等式2]
C=G·u,这里“c”是代码字,并且“u”是数据帧。
近来,全球使用利用奇偶校验矩阵H,而不是利用生成矩阵G的输入数据的编码方法。因此,如在先前的描述中提及的,在利用LDPC码的编码方法中,该奇偶校验矩阵H是最重要的元素。
但是,具有近似超过1,000×2,000尺寸的奇偶校验矩阵H在编码和解码的过程中需要很多的操作,在其实现方面有困难,并且需要非常大的存储空间。
发明内容
据此,本发明提出了一种使用LDPC码编码/解码的方法和装置,其基本上消除了一个或多个由于相关技术的限制和缺点引起的问题。
本发明的一个目的是提供一种使用LDPC码的编码/解码的方法及其装置,通过其可以节省用于存储供使用LDPC码编码或者解码的奇偶校验矩阵的存储器,并且通过其可以提高编码或者解码性能。
本发明的另一个目的是提供一种产生LDPC码的方法,通过其可以节省用于在使用LDPC码的编码/解码方法中存储奇偶校验矩阵的存储器。
本发明的附加的特征和优点将在随后的描述中阐述,并且从该描述中在某种程度上将是显而易见的,或者可以通过实践本发明来获悉。通过尤其在著述的说明书及其权利要求以及所附的附图中指出的结构,可以实现和获得本发明的目的和其他的优点。
为了实现这些和其他的优点,以及按照本发明的目的,如在此处实施和广泛地描述的,一种按照本发明的使用LDPC(低密度奇偶校验)码编码/解码输入数据的方法,包括步骤:通过将包括定义置换矩阵的置换类型的基矩阵扩展为至少一个元素来产生奇偶校验矩阵,其中该置换矩阵是从置换至少一个基置换矩阵的行和列的至少一个的顺序或者转动至少一个基置换矩阵,和使用该奇偶校验矩阵编码或者解码输入数据来产生的。
为了进一步实现这些和其他的优点,以及按照本发明的目的,一种产生LDPC码(其由(n-k)×n矩阵H定义)的方法,包括步骤:确定至少一个z×z基置换矩阵或者z×z零矩阵(这里z是一个等于或者大于1的整数),确定(n-k)/z×n/z基矩阵Hb,该基矩阵Hb包括允许基置换矩阵被借助于每个元素按照预定的规则或者表示零矩阵的信息来置换的信息(这里n是代码字的长度,并且k是信息块的长度),和从通过按照该信息替换基置换矩阵或者零矩阵扩展基矩阵来产生该矩阵。
为了进一步实现这些和其他的优点,以及按照本发明的目的,在使用LDPC码编码输入数据方面,一种用于编码的装置,包括:通过将包括定义置换矩阵的置换类型的基矩阵扩展为至少一个元素来产生奇偶校验矩阵的奇偶校验矩阵产生模块,其中该置换矩阵是从置换至少一个基置换矩阵的行和列的至少一个的顺序或者转动至少一个基置换矩阵来产生的,并且编码模块使用从奇偶校验矩阵产生模块产生的奇偶校验矩阵来编码输入数据。
为了进一步实现这些和其他的优点,以及按照本发明的目的,在使用LDPC码解码输入数据方面,一种用于解码的装置包括:通过将包括定义置换矩阵的置换类型的基矩阵扩展为至少一个元素来产生奇偶校验矩阵的奇偶校验矩阵产生模块,其中该置换矩阵是从置换至少一个基置换矩阵的行和列的至少一个的顺序或者转动至少一个基置换矩阵来产生的,并且解码模块使用从奇偶校验矩阵产生模块产生的奇偶校验矩阵来解码输入数据。
优选的,由置换类型定义的置换矩阵是至少一个基置换矩阵,从置换至少一个基置换矩阵的行和列的一个的顺序或者转动至少一个基置换矩阵产生的多个置换矩阵,或者零矩阵。
优选的,该基矩阵的置换类型的每个是以通过相应的置换类型定义的置换矩阵替换来扩展的,从而产生该奇偶校验矩阵。
优选的,该置换矩阵是通过在预定的方向以规定的间隔移动至少一个基置换矩阵的行或者列的每个的第一类,将该行的特定的一个与该行的随机的一个交换的第二类,将该列的特定的一个与该列的随机的一个交换的第三类,或者转动至少一个基置换矩阵90°、180°或者270°的第四类来产生的。
应该理解,上文的概述和下面的详细说明是示范性和说明性的,并且作为权利要求意欲对本发明提供进一步的说明。
附图说明
该伴随的附图被包括以提供对本发明进一步的理解,并且被结合进和构成本说明书的一部分,其举例说明本发明的实施例,并且与该说明书一起可以用于解释本发明的原理。
在附图中:
图1A是用于解释本发明一个优选实施例的通信系统的方框图;
图1B是在图1A中示出的LDPC编码器的详细的方框图;
图1C是在图1A中示出的LDPC解码器的详细的方框图;
图2是包括多个z×z置换矩阵或者零矩阵的奇偶校验矩阵H的示意图;
图3是用于解释在本发明的一个优选实施例中通过以预定的间隔移动基置换矩阵的所有行来配置多个置换矩阵方法的示意图;
图4是用于解释通过将基置换矩阵的特定的行与另一个随机行交换来配置多个置换矩阵方法的示意图;
图5是用于解释通过将基置换矩阵的特定的列与另一个随机列交换来配置多个置换矩阵方法的示意图;
图6是用于解释通过以特定的角度转动基置换矩阵来配置多个置换矩阵方法的示意图;
图7A至7C是用于解释在发送或者接收侧中按照在编码或者解码数据的过程中四类的组合,使用基置换矩阵和基矩阵Hb产生奇偶校验矩阵H方法的示意图,该基矩阵Hb具有有关从置换基置换矩阵产生的置换矩阵类型的信息;和
图8A至8C是用于解释在发送或者接收侧中按照在编码或者解码数据的过程中四类的组合,使用二个基置换矩阵和基矩阵Hb产生奇偶校验矩阵H方法的示意图,该基矩阵Hb具有有关从置换二个基置换矩阵产生的置换矩阵类型的信息。
具体实施方式
现在将详细地进行介绍本发明的优选实施例,其例子被在伴随的附图中举例说明。
图1A是解释本发明一个优选实施例的通信系统的方框图,其中本发明的技术特点适用于例如无线通信系统。
参考图1A,发射机10和接收机30使用无线信道作为媒介互相通信。在发射机10中,从数据源11输出的k比特源数据u通过LDPC编码器13的LDPC编码被转换为n比特代码字c。由调制器15无线调制的该代码字c被经由无线信道20通过天线17传送,并且然后由接收机30的另一个天线31接收。该接收机30经历与该发射机10相反的处理过程。即,该源数据u可以最后以通过解调器33解调和通过LDPC解码器35解码的方式来获得。
以上解释的数据传送/接收过程是在用于解释本发明的特征所需要的最小范围内描述的。因此,对于本领域的技术人员来说相应的过程需要更多的用于数据传输/接收的步骤是显而易见的。
图1B是在图1A中示出的LDPC编码器13的详细的方框图,而图1C是在图1A中示出的LDPC解码器35的详细的方框图。
用于在LDPC编码器13中编码输入源数据的奇偶校验矩阵H是(n-k)×n维。该“k”指的是输入到LDPC编码器13的源数据的长度(比特单位)。该“n”指的是编码的代码字c的长度(比特单位)。如图2所示,该奇偶校验矩阵H包括多个z×z置换矩阵或者零矩阵。即,在图2中,Pij指的是z×z置换矩阵或者零矩阵。
该多个置换矩阵可以通过以一定规律性置换至少一个基置换矩阵来形成。在包括至少一个基置换矩阵的多个置换矩阵中,优选的,行和列权重是“1”。即,多个置换矩阵的整个行和列元素的一个是“1”,并且其余的元素是“0”。在置换至少一个基置换矩阵以配置多个置换矩阵的过程中,可以考虑以下的四个方法(类别)作为规律。
第一类对应于在特定的方向以预定的间隔移动基置换矩阵的整个行(或者列)的方法。图3示出相应的例子。参考图3,在图3的基置换矩阵(a)的整个行被在向下的方向移动5行(ns=5)(或者,所有列被向右移动3列),以在图3中配置置换矩阵(b)。利用该第一类,其能够按照对于z×z基置换矩阵移动的行或列的间隔产生(z-1)置换矩阵。因此,如果包括该基置换矩阵,则产生z置换矩阵。一旦给出该基置换矩阵,包括该基置换矩阵的z置换矩阵的每个可以通过一个整数来表示。例如,通过将基置换矩阵表示为“0”,通过将从在特定的方向移动基置换矩阵的整个行1行产生的置换矩阵表示为“1”,和通过将从移动基置换矩阵的整个行2行产生的置换矩阵表示为“2”,等等,其能够将该置换矩阵的每个表示为一个整数。
该第二类对应于将基置换矩阵的特定的行与另一个随机行交换的方法。图4示出相应的例子。参考图4,通过将基置换矩阵的第一行与基置换矩阵的第六行交换,产生在图4中示出的置换矩阵(a)。在第二类中,其能够按照哪一个行与z×z基置换矩阵的第一行交换来产生(z-1)置换矩阵。因此,如果包括该基置换矩阵,z置换矩阵被产生。一旦给出该基置换矩阵,包括该基置换矩阵的z置换矩阵的每个可以通过一个整数表示。例如,通过将基置换矩阵表示为“0”,通过将从基置换矩阵的第一行与基置换矩阵的第二行交换产生的置换矩阵表示为“1”,和通过将从基置换矩阵的第1行与基置换矩阵的第3行交换产生的置换矩阵表示为“2”,等等,其能够将该置换矩阵的每个表示为一个整数。在图4中,该置换矩阵是通过将第一行作为基准以与另一个随机行交换来产生的。但是,如果另一个随机行作为基准,其也能够获得相同的结果。
第三类对应于将基置换矩阵的特定的列与另一个随机列交换的方法。图5示出一个第三类的例子。参考图5,通过将基置换矩阵的第一列与基置换矩阵的第六列交换,产生在图5中示出的置换矩阵(a)。在第三类中,其能够按照哪一个列与z×z基置换矩阵的第一列交换来产生(z-1)置换矩阵。因此,如果包括该基置换矩阵,则z置换矩阵被产生。一旦给出该基置换矩阵,包括该基置换矩阵的z置换矩阵的每个可以通过一个整数表示。例如,通过将基置换矩阵表示为“0”,通过将从基置换矩阵的第一列与基置换矩阵的第二列交换产生的置换矩阵表示为“1”,和通过将从基置换矩阵的第一列与基置换矩阵的第三列交换产生的置换矩阵表示为“2”等等,其能够将该置换矩阵的每个表示为一个整数。在图5中,该置换矩阵是通过将第一列作为基准以与另一个随机列交换来产生的。但是,如果另一个随机列作为基准,其也能够获得相同的结果。
并且,第四类对应于通过转动基置换矩阵90°、180°或者270°产生置换矩阵的方法。图6示出相应的例子。参考图6,通过转动基置换矩阵90°,产生在图6中示出的置换矩阵(a)。在第四类中,其能够按照z×z基置换矩阵被转动的角度来产生三个置换矩阵。因此,如果包括该基置换矩阵,则产生四个置换矩阵。一旦给出该基置换矩阵,包括该基置换矩阵的四个置换矩阵的每个可以通过一个整数表示。例如,通过将基置换矩阵表示为“0”,通过将从转动基置换矩阵90°产生的置换矩阵表示为“1”,和通过将从转动基置换矩阵180°产生的置换矩阵表示为“2”等等,其能够将该置换矩阵的每个表示为一个整数。
如在先前的描述中提及的,从基置换矩阵按照四个类别产生的多个置换矩阵的每个类型可以简单地表示为一个整数。作为定义z×z置换矩阵的这样的一个整数在下面以下的描述中将被称作置换类型。“将置换类型表示为一个整数”仅仅是示范性的。作为选择,很明显,该置换类型可以以多种方式表示。
在本发明的一个优选实施例中,为了执行编码或者解码去存储奇偶校验矩阵H本身是不必要的。在执行编码或者解码期间,通过将每个元素以相应的置换矩阵替换,具有作为每个元素的置换类型的该基矩阵Hb被存储和扩展为奇偶校验矩阵H。因此,本发明增强了编码或者解码的性能。并且,由于奇偶校验矩阵本身不需要被存储,因此,本发明可以节省存储器。
如在先前的描述中提及的,图1B和图1C分别是在图1A中的LDPC编码器13和LDPC解码器35的详细示意图。
参考图1B和图1C,该LDPC编码器13包括存储至少一个基置换矩阵和基矩阵Hb的存储模块131,扩展基矩阵以产生奇偶校验矩阵H的奇偶校验矩阵产生模块133,和使用从奇偶校验矩阵产生模块133产生的奇偶校验矩阵编码输入数据的编码模块135。
此外,该LDPC解码器35包括存储至少一个基置换矩阵和基矩阵Hb的存储模块351,扩展基矩阵以产生奇偶校验矩阵的奇偶校验矩阵产生模块353,和使用从奇偶校验矩阵产生模块353产生的奇偶校验矩阵解码输入数据的解码模块355。
在使用正式的矩阵,诸如单位矩阵作为基置换矩阵的情况下,该LDPC编码器13的存储模块131或者LDPC解码器35的存储模块351能够仅仅存储基矩阵Hb。该奇偶校验矩阵产生模块133或者353通过以利用置换类型定义的置换矩阵替换基矩阵Hb的每个置换类型,以扩展基矩阵Hb的方式产生奇偶校验矩阵H。该置换矩阵可以对应于至少一个基置换矩阵,按照前述的第一至第四类别或者四个类别的组合,从置换至少一个基置换矩阵产生的多个置换矩阵,或者零矩阵。对于那些本领域普通技术人员显而易见的,该奇偶校验矩阵产生模块133或者353可以通过软件或者硬件来实现。
该编码模块135使用从奇偶校验矩阵产生模块133产生的奇偶校验矩阵来编码输入数据。并且,存在各种各样的用于使用该奇偶校验矩阵编码输入数据的方法。并且,这些方法示范性地解释如下。
通过等式1和H=[Hd|Hp]的关系式,可以知道,G=[I|(Hp -1Hd)t]t。因此,该LDPC编码模块135以按照等式2将输入数据u乘以“G=[I|(Hp -1Hd)t]t”的方式执行编码。因此,等式2可以由等式3替换。尤其是,k比特输入源数据S1xk被通过等式2编码为n比特代码字X1xk。代码字x具有x=[s p]=[s0,s1,...,sk-1,P0,P1,...,Pm-1]的结构,这里(P0,P1,...,Pm-1)是奇偶校验位,并且(s0,s1,...,sk-1)是系统位(systematic bits)。
[公式3]
c=[I|(Hp -1Hd)t]t·u
然而,使用生成矩阵G的该编码方案是非常复杂的。为了降低上述的复杂度,优选的,将该输入的源数据使用奇偶校验矩阵H直接编码。即,由于x=[s p],如果使用H·x=0的特征,则H·x=H·[s p]=0。从这个等式中,可以获得奇偶校验位p以最终发现代码字x=[s p]。
该LDPC解码器35的解码模块355在接收的过程中使用等式4以解码以上述解释的方式编码的该数据。
[等式4]
H·c=0
即,如果“0”是从编码数据c乘以奇偶校验矩阵H中产生的,这指的是没有传输误差。换句话说,这指的是存在传输误差。因此,源数据可以是相对地独立的。
假定基矩阵Hb被分成二个部分Hd和Hp,该部分Hp通常可以采用模块双对角线矩阵。在模块双对角线矩阵中,主对角线和在主对角线下方或者直接在主对角线上方的斜线包括单位矩阵,并且其余的包括零矩阵。
在选择产生该基置换矩阵和从该基置换矩阵中产生多个不同的置换矩阵的方法的过程中,优选的,诸如4-圈或者6-圈的短周期的产生在整个奇偶校验矩阵H中被减到最小。特别地,优选的,该奇偶校验矩阵H不具有4-圈。此外,优选的,该奇偶校验矩阵H具有等于或者小于预置的临界值Cmax的6-圈。该4-圈指的是奇偶校验矩阵H的随机二行同时地在二个点上分别地具有“1”的情况。该6-圈指的是从奇偶校验矩阵H的三个随机行中选择的二个可结合的行在相同的点上分别地具有“1”的情况。图7A至7C是用于解释在发送或者接收侧中按照在编码或者解码数据的过程中四类的组合,使用基置换矩阵和基矩阵Hb产生奇偶校验矩阵H方法的示意图,该基矩阵Hb具有有关从置换基置换矩阵产生的置换矩阵类型的信息。
图7A示出具有行和列权重1的基置换矩阵,这里z=5。并且,图7B示出基矩阵Hb,该基矩阵Hb包括有关按照前述的四个类别的组合,从置换基置换矩阵产生的置换矩阵的置换类型的信息。在图7B中,包括在基矩阵Hb中的置换类型是通过诸如(ns,nr,nc,nt)的格式表示的。该(ns,nr,nc,nt)的格式指的是相应的置换矩阵是以移动基置换矩阵的所有行或者列ns,特定的行(例如,第一行)与第nr行交换,和转动基置换矩阵一个对应于nt的角度的方式来产生的。例如,该置换类型(2,0,1,0)指的是新的置换矩阵从移动在图7A中示出的基置换矩阵的所有行或者列二行或者列,并且互相交换第一和第二行来产生。在图7B中,“(-1)”指的是5×5零矩阵。因此,如果在图7A中示出的基置换矩阵和基矩阵Hb包括定义在图7B中示出的基置换矩阵的置换类型,其能够按照预定的规则或者规律性容易地产生奇偶校验矩阵H。图7C示出从在图7A中示出的基置换矩阵和包括在图7B中示出的置换矩阵的置换类型的基矩阵Hb产生的奇偶校验矩阵H。
在参考图7A至7C解释的实施例中,多个置换矩阵是从基置换矩阵通过前述的四个类别的组合来产生的。代之以,多个置换矩阵可以通过四个类别的一个或者通过二个或者三个类别的组合来产生。在多个置换矩阵是从四个类别的一个来产生的情况下,该置换矩阵的类型可以表示成一个整数。在多个置换矩阵是从四个类别的二个来产生的情况下,该置换矩阵的类型可以表示为二个整数。在多个置换矩阵是从三个类别的组合来产生的情况下,该置换矩阵的类型可以表示为三个整数。
例如,通过组合以预定的间隔移动第一类别的置换矩阵的整个行或者列的方法与以预定的角度转动基置换矩阵的方法,其能够将包括在基矩阵Hb中的置换类型从(ns,nr,nc,nt)简化为(ns,nr)。此外,如果预定的角度被设置为90°,该置换矩阵的类型可以表示为一个整数s。在这种情况下,“s”是一个对应于0、1、...、(z-1)、z、(z+1)、...、(2×z-1)的一个的整数。即,从移动z×z基置换矩阵预定的间隔产生的z矩阵,和从在预定的方向转动以前的矩阵90°产生的另一个z矩阵可以表示为一个整数s。z×z单位矩阵优选的可以用作该基置换矩阵。在以上所述的例子中,包括在基矩阵Hb中的置换矩阵可以被简化,并且该LDPC码是使用该简化的信息表示的,以节省用于LDPC码存储的存储器和提供最佳性能。
图8A至8C是用于解释在发送或者接收侧中按照在编码或者解码数据的过程中四类的组合,使用二个基置换矩阵和基矩阵Hb产生奇偶校验矩阵H方法的示意图,该基矩阵Hb具有有关从置换二个基置换矩阵产生的置换矩阵类型的信息。
参考图8A至8C解释的实施例不同于前述参考图7A至7C解释的实施例,其中多个不同的置换矩阵是从二个基置换矩阵来产生的,并且其中包括在基矩阵Hb中的置换类型可以表示为(no,ns,nr,nc,nt)的格式,如图8B所示。该“ns,nr,nc和nt”的含义与以上解释的含义是相同的。并且,“n0”是表示多个不同的置换矩阵是基于二个基置换矩阵的哪一个产生的信息。
在图8B中,“(-1)”指的是5×5零矩阵。并且,图8C示出从基矩阵Hb产生的奇偶校验矩阵H,该基矩阵Hb包括在图8A中示出的二个基置换矩阵和在图8B中示出的置换矩阵的类型信息。
在基于二个基置换矩阵产生多个不同的置换矩阵的方面,也可以使用四个类别的一个,或者四个类别的二个或者三个的组合。并且,此外是明显的,该基置换矩阵的数目对应于至少三个。
因此,在编码或者解码输入数据的过程中,本发明不需要存储占用具有非常大容量的存储器的奇偶校验矩阵,由此节省存储器,并且从而增强编码/解码性能。
虽然参考其优选实施例已经在此处描述和举例说明了本发明,对于那些本领域技术人员来说显而易见,不脱离本发明的精神和范围,可以在其中进行各种各样的修改和变化。因此,本发明意欲覆盖其归入所附的权利要求和其等效范围之内的本发明的改进和变化。
工业实用性
因此,本发明适用于诸如移动通信系统、宽带无线接入系统等等的无线通信系统,并且进一步适用于需要编码或者解码的各种各样的领域。
Claims (26)
1.一种使用LDPC(低密度奇偶校验)码编码/解码输入数据的方法,包括步骤:
通过将包括定义置换矩阵的置换类型的基矩阵扩展为至少一个元素来产生奇偶校验矩阵,其中该置换矩阵是从置换至少一个基置换矩阵的行和列的至少一个的顺序或者转动至少一个基置换矩阵来产生的;和
使用奇偶校验矩阵来编码或者解码输入数据。
2.根据权利要求1所述的方法,其中该基矩阵进一步包括定义至少一个基置换矩阵的置换类型和零矩阵。
3.根据权利要求2的方法,其中该基矩阵的置换类型的每个是以通过相应的置换类型定义的置换矩阵来替换的,以扩展为该奇偶校验矩阵。
4.根据权利要求2的方法,其中至少一个基置换矩阵和从至少一个基置换矩阵产生置换矩阵的类别被选择以不形成用于整个奇偶校验矩阵H的4-圈。
5.根据权利要求4的方法,其中至少一个基置换矩阵和从至少一个基置换矩阵中产生置换矩阵的类别被以用于整个奇偶校验矩阵的6-圈被设置等于或者小于预置的临界值(Cmax)的方式来选择。
6.根据权利要求1的方法,其中如果奇偶校验矩阵H被分成二个部分Hd和Hp,该部分Hp是模块双对角线矩阵,其中H=[Hd|Hp],Hd是(n-k)×k维,Hp是(n-k)×(n-k)维。
7.根据权利要求1的方法,其中该置换矩阵是从在预定的方向以一个任意的间隔移动至少一个基置换矩阵的行或者列的每个来产生的。
8.根据权利要求1的方法,其中该置换矩阵是从将至少一个置换矩阵的行的特定的一个与行的另一个随机的一个交换来产生的。
9.根据权利要求1的方法,其中该置换矩阵是从将至少一个置换矩阵的列的特定的一个与列的另一个随机的一个交换来产生的。
10.根据权利要求1的方法,其中该置换矩阵是从转动至少一个基置换矩阵90°、180°或者270°来产生的。
11.根据权利要求1的方法,其中该置换矩阵是从在预定的方向以一个规定的间隔移动至少一个基置换矩阵的行或者列的每个(第一类),将行的特定的一个与行的随机一个交换(第二类),将列的特定的一个与列的随机一个交换(第三类),或者转动至少一个基置换矩阵90°、180°或者270°(第四类)来产生的。
12.根据权利要求11的方法,其中该置换矩阵是从第一至第四类的至少二个的组合来产生的。
13.一种产生由(n-k)×n矩阵H定义的LDPC码的方法,该方法包括步骤:
确定至少一个z×z基置换矩阵或者z×z零矩阵(这里z是一个等于或者大于1的整数);
确定(n-k)/z×n/z基矩阵Hb,该基矩阵Hb包括允许基置换矩阵将被用每个元素按照预定的规则或者表示零矩阵的信息置换的信息,其中n是代码字的长度,并且k是信息块的长度;和
从通过按照该信息替换基置换矩阵或者零矩阵扩展基矩阵来产生该矩阵。
14.根据权利要求13的方法,其中允许基置换矩阵被置换的信息包括基置换矩阵的行交换的行信息,基置换矩阵的列交换的信息和基置换矩阵的行移动的信息的至少一个。
15.一种用于使用LDPC码编码输入数据的装置,包括:
通过将包括定义置换矩阵的置换类型的基矩阵扩展为至少一个元素来产生奇偶校验矩阵的奇偶校验矩阵产生模块,其中该置换矩阵是从置换至少一个基置换矩阵的行和列的至少一个的顺序或者转动至少一个基置换矩阵来产生的;和
使用从奇偶校验矩阵产生模块产生的奇偶校验矩阵编码输入数据的编码模块。
16.根据权利要求15的设备,其中该基矩阵进一步包括定义至少一个基置换矩阵的置换类型和零矩阵。
17.根据权利要求16的装置,其中该奇偶校验矩阵产生模块利用由相应的置换类型定义的置换矩阵来替换基矩阵的置换类型的每个,以将基矩阵扩展为奇偶校验矩阵。
18.根据权利要求15的设备,其中该预定的规则对应于在预定的方向以规定的间隔移动至少一个基置换矩阵的行或者列的每个的第一类,将行的特定的一个与行的随机一个交换的第二类,将列的特定的一个与列的随机一个交换的第三类,或者转动至少一个基置换矩阵90°、180°或者270°的第四类。
19.根据权利要求18的装置,其中该置换矩阵是从第一至第四类的至少二个的组合来产生的。
20.根据权利要求17的装置,进一步包括存储至少一个基置换矩阵和基矩阵的存储模块。
21.一种使用LDPC码解码输入数据的装置,包括:
通过将包括定义置换矩阵的置换类型的基矩阵扩展为至少一个元素来产生奇偶校验矩阵的奇偶校验矩阵产生模块,其中该置换矩阵是从置换至少一个基置换矩阵的行和列的至少一个的顺序或者转动至少一个基置换矩阵来产生的;和
使用从奇偶校验矩阵产生模块产生的奇偶校验矩阵解码输入数据的解码模块。
22.根据权利要求21的装置,其中该基矩阵进一步包括定义至少一个基置换矩阵的置换类型和零矩阵。
23.根据权利要求22的解码器,其中该奇偶校验矩阵产生模块利用由相应的置换类型定义的置换矩阵来替换基矩阵的置换类型的每个,以将基矩阵扩展为奇偶校验矩阵。
24.根据权利要求21的装置,其中该预定的规则对应于在预定的方向以规定的间隔移动至少一个基置换矩阵的行或者列的每个的第一类,将行的特定的一个与行的随机一个交换的第二类,将列的特定的一个与列的随机一个交换的第三类,或者转动至少一个基置换矩阵90°、180°或者270°的第四类。
25.根据权利要求24的解码器,其中该置换矩阵是从第一至第四类的至少二个的组合来产生的。
26.根据权利要求21的解码器,进一步包括存储至少一个基置换矩阵和基矩阵的存储模块。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040074732 | 2004-09-17 | ||
KR20040074732 | 2004-09-17 | ||
KR1020040077013 | 2004-09-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101023587A true CN101023587A (zh) | 2007-08-22 |
CN100583650C CN100583650C (zh) | 2010-01-20 |
Family
ID=37131328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200580031545A Expired - Fee Related CN100583650C (zh) | 2004-09-17 | 2005-09-14 | 使用ldpc码编码和解码的方法及其装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7917827B2 (zh) |
JP (1) | JP4822452B2 (zh) |
KR (1) | KR101065693B1 (zh) |
CN (1) | CN100583650C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018126428A1 (en) * | 2017-01-06 | 2018-07-12 | Nokia Technologies Oy | Method and apparatus for vector based ldpc base matrix usage and generation |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7657821B1 (en) * | 2006-05-09 | 2010-02-02 | Cisco Technology, Inc. | Error detecting code for multi-character, multi-lane, multi-level physical transmission |
KR101128804B1 (ko) * | 2006-06-07 | 2012-03-23 | 엘지전자 주식회사 | 참조 행렬을 이용한 lpdc 부호화 및 복호화 방법 |
US8271851B2 (en) * | 2006-11-13 | 2012-09-18 | France Telecom | Encoding and decoding a data signal as a function of a correcting code |
KR101405961B1 (ko) * | 2008-02-11 | 2014-06-12 | 엘지전자 주식회사 | Ldpc 코드를 이용한 부호화/복호화 방법 |
CN102077470B (zh) * | 2009-05-25 | 2013-02-27 | 华为技术有限公司 | 采用线性分组码的编码方法、装置及线性分组码生成方法、装置 |
US8196012B2 (en) * | 2009-10-05 | 2012-06-05 | The Hong Kong Polytechnic University | Method and system for encoding and decoding low-density-parity-check (LDPC) codes |
CN102332964A (zh) * | 2010-07-12 | 2012-01-25 | 电子科技大学 | 基于网络-信道联合编译码的多接入中继协作通信技术 |
WO2015127426A1 (en) * | 2014-02-24 | 2015-08-27 | Qatar Foundation For Education, Science And Community Development | Apparatus and method for secure communication on a compound channel |
US9804925B1 (en) * | 2014-02-25 | 2017-10-31 | Google Inc. | Data reconstruction in distributed storage systems |
US9727419B2 (en) * | 2015-11-06 | 2017-08-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Non-binary low density parity check code column rotation |
US11418216B2 (en) * | 2020-03-30 | 2022-08-16 | Smart IOPS, Inc. | Method and system for generating parity check matrix for low-density parity check codes |
GB2595240B (en) * | 2020-05-18 | 2022-11-30 | Accelercomm Ltd | Low density parity check decoder, electronic device, and method therefor |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6895547B2 (en) * | 2001-07-11 | 2005-05-17 | International Business Machines Corporation | Method and apparatus for low density parity check encoding of data |
US7406647B2 (en) * | 2001-12-06 | 2008-07-29 | Pulse-Link, Inc. | Systems and methods for forward error correction in a wireless communication network |
EP1526647B1 (en) | 2002-07-02 | 2008-10-01 | Mitsubishi Electric Corporation | Generation of a check matrix for irregular low-density parity-check (LDPC) codes |
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 |
WO2004019268A1 (en) * | 2002-08-20 | 2004-03-04 | Flarion Technologies, Inc. | Methods and apparatus for encoding ldpc codes |
KR20040036460A (ko) | 2002-10-26 | 2004-04-30 | 삼성전자주식회사 | Ldpc 복호화 장치 및 그 방법 |
CA2516716C (en) * | 2003-02-26 | 2012-08-14 | Flarion Technologies, Inc. | Method and apparatus for performing low-density parity-check (ldpc) code operations using a multi-level permutation |
KR100996029B1 (ko) * | 2003-04-29 | 2010-11-22 | 삼성전자주식회사 | 저밀도 패리티 검사 코드의 부호화 장치 및 방법 |
KR100809619B1 (ko) * | 2003-08-26 | 2008-03-05 | 삼성전자주식회사 | 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법 |
US7260763B2 (en) * | 2004-03-11 | 2007-08-21 | Nortel Networks Limited | Algebraic low-density parity check code design for variable block sizes and code rates |
US7143333B2 (en) * | 2004-08-09 | 2006-11-28 | Motorola, Inc. | Method and apparatus for encoding and decoding data |
-
2004
- 2004-09-24 KR KR1020040077013A patent/KR101065693B1/ko not_active IP Right Cessation
-
2005
- 2005-09-14 CN CN200580031545A patent/CN100583650C/zh not_active Expired - Fee Related
- 2005-09-14 JP JP2007532236A patent/JP4822452B2/ja not_active Expired - Fee Related
- 2005-09-14 US US11/575,494 patent/US7917827B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018126428A1 (en) * | 2017-01-06 | 2018-07-12 | Nokia Technologies Oy | Method and apparatus for vector based ldpc base matrix usage and generation |
CN110192349A (zh) * | 2017-01-06 | 2019-08-30 | 诺基亚技术有限公司 | 用于基于向量的ldpc基础矩阵的使用和生成的方法和装置 |
US10979084B2 (en) | 2017-01-06 | 2021-04-13 | Nokia Technologies Oy | Method and apparatus for vector based LDPC base matrix usage and generation |
CN110192349B (zh) * | 2017-01-06 | 2021-08-27 | 诺基亚技术有限公司 | 用于基于向量的ldpc基础矩阵的使用和生成的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
JP4822452B2 (ja) | 2011-11-24 |
KR20060025977A (ko) | 2006-03-22 |
CN100583650C (zh) | 2010-01-20 |
KR101065693B1 (ko) | 2011-09-19 |
US7917827B2 (en) | 2011-03-29 |
JP2008514102A (ja) | 2008-05-01 |
US20080270867A1 (en) | 2008-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100583650C (zh) | 使用ldpc码编码和解码的方法及其装置 | |
CN101128981B (zh) | 使用低密度奇偶校验矩阵的编码和解码方法 | |
CN101395804B (zh) | 使用ldpc码编码和解码的方法 | |
US7536623B2 (en) | Method and apparatus for generating a low-density parity check code | |
CN101449463B (zh) | Ldpc解码方法和装置 | |
US8438459B2 (en) | Apparatus and method for decoding using channel code | |
CN100571044C (zh) | 用ldpc码的自适应可变码率的编码和解码方法 | |
CN102638275B (zh) | 无线通信系统中使用低密度奇偶校验码编码和解码数据的方法和装置 | |
US7814403B2 (en) | Method of encoding and decoding using low density parity check code | |
CN101764620B (zh) | 用于使用信道代码解码的装置和方法 | |
CN101252360A (zh) | 一种高围长低码率多进制ldpc码的结构化构造方法 | |
CN101305521B (zh) | 使用低密度奇偶校验码编码和解码的方法 | |
EP1800406A2 (en) | Method of encoding and decoding using ldpc code and apparatus thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100120 Termination date: 20170914 |
|
CF01 | Termination of patent right due to non-payment of annual fee |