CN102612806B - 纠错编码方法和装置以及使用了它们的通信系统 - Google Patents

纠错编码方法和装置以及使用了它们的通信系统 Download PDF

Info

Publication number
CN102612806B
CN102612806B CN201080051934.8A CN201080051934A CN102612806B CN 102612806 B CN102612806 B CN 102612806B CN 201080051934 A CN201080051934 A CN 201080051934A CN 102612806 B CN102612806 B CN 102612806B
Authority
CN
China
Prior art keywords
matrix
row
ldpc code
encoder
parity
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
CN201080051934.8A
Other languages
English (en)
Other versions
CN102612806A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of CN102612806A publication Critical patent/CN102612806A/zh
Application granted granted Critical
Publication of CN102612806B publication Critical patent/CN102612806B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/1174Parity-check or generator matrices built from sub-matrices representing known block codes such as, e.g. Hamming codes, e.g. generalized 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/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • H03M13/1182Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the structure of the parity-check matrix is obtained by reordering of a random parity-check matrix
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • 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

Abstract

本发明提供一种通过与可变编码率对应的高效的编码方法或者部件来实现在使码长固定的状态下能够改变编码率的LDPC码生成方法从而不用改变码长就能够调整LDPC码的编码率的纠错方法和装置以及使用了它们的通信系统。本发明的纠错方法具备:行分割工序(S3),根据1个奇偶校验矩阵,将一部分或者所有行的每个行分割为2个以上的行;以及码构成工序,构成任意的编码率的多个LDPC码。

Description

纠错编码方法和装置以及使用了它们的通信系统
技术领域
本发明涉及具备构成码长相等而编码率不同的多个LDPC码的工序或者部件的纠错编码方法和装置以及使用了它们的通信系统。
背景技术
一般,在使用了纠错编码方法以及装置的通信系统中,编码率越大,通信效率越佳,但纠错能力低,相反地,编码率越低,通信效率越差,但纠错能力变高,所以结合通信路径的状况来设定编码率这就变得重要。另外,编码率是指,使用纠错码的码长n以及信息序列长k来表示的值“k/n”(=1-(行数/列数))。
鉴于上述技术背景,以往在一部分的通信系统中,在通信系统中搭载不同的编码率的纠错码,根据通信路径的状况等而能够切换设定编码率。
另外,作为以往的一个例子,已知低密度奇偶校验码(Low-Density Parity-Check code:以下,称为“LDPC码”)。
LDPC码是用“1”的要素稀疏(相对于全部要素数量,以少的比例存在)的奇偶校验矩阵来定义的码,奇偶校验矩阵的列数n为码长,行数m对应于校验比特(奇偶比特)数。
将奇偶校验矩阵的列所包含的“1”的数量称为该列中的“列权重”,将各列的列权重的值的分布称为“列权重分布”。
列权重分布对LDPC码的纠错能力的影响大,能够根据密度演化方法(density evolution method)等来计算最佳的列权重分布。
另外,同样地,将奇偶校验矩阵的行所包含的“1”的数量称为该行中的“行权重”。
另外,能够通过被称为Tanner图的二部图(bipartite graph)来表现奇偶校验矩阵,但Tanner图中包含的最短循环的长度越大,LDPC码的错误平层(error floor)越少。
在LDPC码中,如果编码率不同,则奇偶校验矩阵也不同,在编码、解码中进行的运算依赖于奇偶校验矩阵。
因此,在1个通信系统中搭载多个编码率的LDPC码的情况下,必须针对每个编码率准备不同的编码器、解码器。
因此,以往开发了在不同的编码率的多个LDPC码之间共用电路从而高效地构成通信系统的Rate-Compatible LDPC(速率兼容LDPC)码(以下,称为“RC-LDPC码”)。
在RC-LDPC码的设计中,大多构成为编码率高的LDPC码的奇偶校验矩阵与编码率低的奇偶校验矩阵的部分矩阵一致,但难以在2种编码率的双方中都成为最佳的列权重分布。
因此,提出了如下技术:首先准备编码率低的奇偶校验矩阵,将其一部分的行分割为2个行从而增加行数,并且追加列,由此能够在行分割前的奇偶校验矩阵和行分割后的奇偶校验矩阵中切换不同的2种编码率(例如,参照专利文献1)。
在上述专利文献1记载的以往技术中,通过研究追加列,使奇偶校验矩阵具有阶梯矩阵的构造(后述),能够实现有效地与可变的编码率的切换对应的编码运算的结构。
但是,在这个方案中,每当对行进行1次分割(使奇偶比特增加1比特)时都会追加1个列权重“2”的列,所以在可变的2种编码率之间,信息序列长k相等,码长增加与追加了列的部分相应的量。
此处,说明了编码率切换,但作为LDPC码的其他问题,还有奇偶校验矩阵的构成的难易度。
以任意的码长以及编码率来构成Tanner图的最短循环长大的奇偶校验矩阵是困难的。
因此,以往在构成与期望的码长以及编码率接近的值的LDPC码之后,使用填充(padding)、穿孔(puncture)这样的方案来调整编码率。
另外,填充是指,在发送时将信息比特的一部分设为某个确定的值从而减小信息序列长k的技术。另外,穿孔是指,通过在发送时不发送奇偶比特的一部分从而减小奇偶比特长的技术。
但是,在应用了上述方案的情况下,产生码长变化、纠错能力大幅劣化的问题。
另外,虽然还能够通过上述专利文献1的方法来调整编码率,但即使在该情况下码长也会变化。
接下来,说明LDPC码的编码方法。
关于LDPC码的编码方法,已知几种,且还提出了使用下三角矩阵、阶梯矩阵的方案(例如,参照非专利文献1)。
此处,说明上述非专利文献1记载的使用了下三角矩阵的编码。
下三角矩阵是指,m×n矩阵(其中,m<n)的最右侧的m×m部分矩阵的对角成分全部为“1”、并且比对角成分靠上的行的要素全部为“0”的矩阵。
在奇偶校验矩阵是下三角矩阵的情况下,能够仅通过根据信息比特进行异或来计算奇偶比特。
例如,如果针对在奇偶校验矩阵的第一行中与成为“1”的列对应的信息比特进行异或,则能够计算出码字中的第一个奇偶比特。
另外,如果针对全部信息比特和第1个至第j-1个奇偶比特中的在奇偶校验矩阵的第j行中与成为“1”的列对应的上述信息比特以及奇偶比特进行异或,则能够计算出码字中的第j(>1)个奇偶比特。即,如果从第1比特的奇偶比特起逐个地依次进行计算,则能够计算出所有的奇偶比特,能够进行编码。
为了进行上述编码方法,需要使奇偶校验矩阵成为下三角矩阵。
但是,如上述非专利文献1所记载那样,如果将奇偶校验矩阵的行作为矢量时的行矢量是线性独立(即,如果奇偶校验矩阵的秩(rank)与行数一致),则能够通过基本行操作和列交换(高斯删除法)将奇偶校验矩阵变换为下三角矩阵。
另外,基本行操作是指,对于某个行将其他行针对每个要素进行相加(进行异或)这样的操作、和调换2个行的行交换操作,列交换是指,调换2个列的操作。
即使进行了基本行操作,LDPC码的信息比特与码字的对应关系也不会变化。即,即使根据通过基本行操作而变形了的奇偶校验矩阵进行编码,结果也与根据执行基本行操作之前的奇偶校验矩阵进行编码的情形相同。另一方面,如果进行列交换,则信息比特与码字的对应关系会瓦解。
在大多数情况下,如果进行基本行操作,则奇偶校验矩阵的“1”的稀疏性会丧失,所以有如下方案:在解码中使用“1”稀疏的原来的奇偶校验矩阵,在编码中使用如上所述生成的下三角矩阵(以下,称为“编码矩阵”)。
如上所述,在通过基本行操作以及列交换对奇偶校验矩阵进行下三角化而生成了编码矩阵的情况下,解码用的奇偶校验矩阵与编码矩阵之间的对应关系由于列交换而会瓦解,为了解决这个问题,对解码用的奇偶校验矩阵也进行与在编码矩阵的生成过程中进行的列交换同样的列交换即可。
专利文献1:WO2007/091327号公报
非专利文献1:和田山正著,「低密度パリテイ検査符号とその復号法」トリケツプス(“低密度奇偶校验码及其解码方法”Triceps),2002年6月5日发行
发明内容
在使用了与以往的可变编码率对应的LDPC码生成部件的纠错编码方法和装置以及使用了它们的通信系统中,为了构成高效的编码方法,对于奇偶校验矩阵,不仅是行而且还追加列,从而对编码率进行可变设定,所以存在当切换了编码率时码长也会变化这样的问题。
另外,存在即使在使用上述方案来调整LDPC码的编码率时码长也会变化这样的问题。
本发明是为了解决上述那样的问题而完成的,其目的在于提供一种纠错编码方法和装置以及使用了它们的通信系统,通过与可变编码率对应的高效的编码方法或者部件,实现在码长固定的状态下使编码率可变的LDPC码生成方法,不用改变码长就能够调整LDPC码的编码率。
本发明的纠错编码方法是进行码长相等而编码率不同的多个LDPC码的编码的纠错编码方法,具备编码工序,在该编码工序中,在进行多个LDPC码中的与对应于第一编码率的第一LDPC码不同的编码率所对应的第一LDPC码的编码时,基于根据用于进行第一LDPC码的编码的第一编码矩阵或者第一编码矩阵的部分矩阵而生成、并用于进行码长与第一LDPC码相等而编码率与第一LDPC码不同的LDPC码的编码的编码矩阵,进行编码。
根据本发明,能够得到通过与可变编码率对应的高效的编码方法来实现在码长固定的状态下能够改变编码率的LDPC码生成方法从而不用改变码长就能够调整LDPC码的编码率的纠错编码方法。
附图说明
图1是示出本发明的实施方式1的奇偶校验矩阵的行分割的说明图(实施例1)。
图2是示出本发明的实施方式1的行分割前后的奇偶校验矩阵的说明图(实施例1)。
图3是示出本发明的实施方式1的编码矩阵的生成方法的流程图(实施例1)。
图4是示出在图3内的各步骤中处理的矩阵的说明图(实施例1)。
图5是示出通过本发明的实施方式3进一步进行行分割而生成的奇偶校验矩阵的说明图(实施例3)。
图6是示出通过本发明的实施方式3生成的编码矩阵的说明图(实施例3)。
图7是示出本发明的实施方式3的编码矩阵的生成方法的流程图(实施例3)。
图8是示出本发明的实施方式4的通信系统的框结构图(实施例4)。
图9是示出本发明的实施方式4的编码器的内部结构的一个例子的框图(实施例4)。
图10是示出本发明的实施方式5的编码器的内部结构的一个例子的框图(实施例5)。
图11是示出本发明的实施方式6的编码矩阵的生成方法的流程图(实施例6)。
(符号说明)
100、100A:编码器;101、101A:编码率切换器;102、102A:输入电路;103、105:编码电路;104:选择器;106:输出电路;108:编码电路;109:选择器;200:调制器;300:通信路径;400:解调器;500:解码器;G、G1~G3、Gc、Gi:编码矩阵;H、H1~H3、Hc、Hi:奇偶校验矩阵;k:信息序列长;r:增加行数。
具体实施方式
(实施例1)
以下,参照附图,说明本发明的实施方式1的纠错编码方法(或者装置)。
另外,在本发明的实施方式1中,在将所处理的LDPC码设为系统码(systematic code)、将奇偶校验矩阵设为m×n矩阵时,设最右侧的m列对应于奇偶比特。其中,该奇偶比特的对应位置是为了方便起见而设定的,并不限于此,适当地调换列的对应位置,当然也能够应用与本发明同样的结构。
另外,在本发明的实施方式1中,设使用对奇偶校验矩阵进行下三角化而得到的编码矩阵(编码用校验矩阵)来进行LDPC码的编码,通过行分割这样的操作,使奇偶校验矩阵的行数可变,从而使LDPC码的编码率(行数)可变。
图1是示出本发明的实施方式1的奇偶校验矩阵的行分割的说明图。
在图1中,“行分割”是指如下方案:通过将奇偶校验矩阵的1个行(参照单点划线框)所包含的“1”分割为新的2个以上的行(参照虚线框)来进行配置,使行数增加,从而降低编码率。
如图1那样,通过切换使用进行行分割之前和分割后的奇偶校验矩阵,从而使编码率可变。
此时,特征在于,在行分割的前后,(1)码长(=9)相同,(2)各列的列权重(“1”的数量)相同,(3)奇偶校验矩阵的Tanner图的内周(girth)不会减少。特别是后2个特征(2)、(3)表示即使在行分割后纠错能力也高。
但是,即使原来的奇偶校验矩阵具有能够实现高效的编码的构造(下三角矩阵、阶梯矩阵),该构造也会由于行分割而瓦解,所以无法单纯地构成与可变编码率对应的编码方案。
因此,例如在上述专利文献1中,为了应对这个问题,在图1的行分割之后,新追加了列,但由于列的追加,针对每个编码率成为不同的码长。
相对于此,本发明的实施方式1实现了即使在图1的行分割后也不用追加新的列而能够高效地编码的编码方法。
图2是示出本发明的实施方式1中的行分割前后的奇偶校验矩阵的说明图。
在图2中,原来的奇偶校验矩阵H1(参照上段侧)是由行数m以及码长n构成的“m×n”矩阵,通过行分割而增加了r行的分割后的奇偶校验矩阵H2(参照下段侧)是由行数“m+r”以及码长n构成的“(m+r)×n”矩阵。此处,增加行数r相当于增加奇偶比特数。
如图2所示,在行分割的前后,码长n相同,在各列中列权重也相同。
另外,在本发明的实施方式1中,没有特别限制将1行分割为几行,所以不仅能够设定进行行分割的行数,而且还能够根据将1行分割为几行,来设定希望增加的行数r(希望增加的奇偶比特数)。
另外,本发明的实施方式1的纠错编码方法适用于通信系统,但在该情况下,区分于在解码中使用的奇偶校验矩阵,要在通信系统中准备用于进行编码的编码矩阵(后述)。
另外,如果利用以下的方法来生成编码矩阵,则能够通过1个编码矩阵来实现多个编码率的LDPC码的编码。
而且,根据使用了以下的编码矩阵的编码方法,能够解决由于行分割而使矩阵的构造瓦解这样的第一问题和针对可变的每个编码率成为不同的码长这样的第二问题这两者。
接下来,参照图1以及图2,并且参照图3以及图4,说明本发明的实施方式1的纠错编码方法(或者装置)中的编码矩阵的生成方法。
图3是示出本发明的实施方式1的编码矩阵G2的生成方法的流程图,图4是示出在图3内的各步骤S1~S6中处理的矩阵的说明图。另外,本发明的实施方式1的纠错编码装置能够通过将各步骤S1~S6分别置换为部件来实现。
在图3、图4中,首先,对行分割前的奇偶校验矩阵H1进行基本行操作以及列交换,并进行下三角化,如图4那样生成编码矩阵G1(步骤S1)。
接下来,对行分割前(进行下三角化的操作之前)的奇偶校验矩阵H1进行步骤S1的列交换,使奇偶校验矩阵H1的列的排列顺序与编码矩阵G1的列的排列顺序一致(步骤S2)。
接下来,对奇偶校验矩阵H1进行行分割,生成使奇偶校验矩阵H1的行数增加了r行的奇偶校验矩阵H2(步骤S3)。
其中,以使行分割后的奇偶校验矩阵H2的各行矢量成为线性独立(linearly independent)的方式,进行步骤S3的行分割。如果满足这个条件,则对分割前的奇偶校验矩阵H1的行中的哪几行进行分割没有限制,另外,也可以将1个行分割为几行。
作为行分割的一个例子,有如下方法:对分割前的奇偶校验矩阵H1的行权重大的行进行分割,使行分割后的奇偶校验矩阵H2的行权重的偏重(deviation)变小。根据这个方法,在大多情况下,奇偶校验矩阵H2的行矢量成为线性独立。
另外,作为行分割的其他例子,还有以使行分割后的各行的行权重尽可能成为“2的乘方”的数的方式进行分割的方法。根据这个方法,能够削减纠错电路的存储量、电路规模。
在本发明的实施方式1中的行分割中,将原来的行的“1”如何分配到行分割后的多个行这没有限制,只要行分割后的奇偶校验矩阵H2的行矢量成为线性独立,就可以任意分配。
作为例子,有随机地分配的方法、从属于实施行分割的行的“1”之中的列编号最小的“1”起依次逐个按顺序配置到行分割后的行的分配方法。
接下来,接着行分割(步骤S3),对于在步骤S1中生成的编码矩阵G1,将通过步骤S3的行分割而增加的r行如图4那样附加到编码矩阵G1的最上面的行,从而生成矩阵A(步骤S4)。
其中,如以下那样选择在步骤S4中附加的行。
例如,在仅对奇偶校验矩阵H1的1个行实施行分割而分割为q行的情况下,将去除了q行中的任意1行的“q-1”行附加到编码矩阵G1。
另外,在对奇偶校验矩阵H1的行中的2行以上进行了行分割的情况下,也同样地将去除了在各行分割中生成的行中的任意1行后的所有行分别附加到编码矩阵G1。
接下来,对在步骤S4中生成的矩阵A进行下三角化,生成与行分割后的奇偶校验矩阵H2对应的编码矩阵G2(步骤S5)。
此时,如图4所示,矩阵A的下侧m行是编码矩阵G1且已经被下三角化,所以仅对在步骤S4中附加的上侧r行进行基本行操作,另外如果需要,对矩阵A的全体进行列交换。
在上述步骤S5中进行的针对矩阵A的操作中,附加以下的限制。
首先,在进行基本行操作时,在步骤S4中附加的行与下侧m行之间不进行行交换。即,仅在步骤S4中附加的r行的行彼此之间进行行交换。其中,进行对在步骤S4中附加的行相加属于下侧m行的行(进行每个要素的异或)的操作。
另外,对于矩阵A的右侧m列(下侧m行已经被下三角化的列),不进行列交换。
即使加上了以上的限制,只要奇偶校验矩阵H2的各行矢量是线性独立,就能够对矩阵A进行下三角化。
最后,对奇偶校验矩阵H1、H2也进行步骤S5的列交换,生成在与编码矩阵G1、G2之间使列的对应吻合了的奇偶校验矩阵H1’、H2’(步骤S6),并结束图3以及图4所示的编码矩阵G2的生成处理例程。
通过以上的方法生成的编码矩阵G2的下m行成为将与行分割前的奇偶校验矩阵H1对应的编码矩阵G1的列进行了重排后的矩阵。
另外,编码矩阵G2的各行是对行分割后的奇偶校验矩阵H2进行基本行操作以及列交换而得到的矩阵,所以编码矩阵G2是与列交换后的奇偶校验矩阵H2对应的编码矩阵。
即,在使用了本发明的实施方式1的纠错编码方法的通信系统中,如果使用行分割前的LDPC码,则使用编码矩阵G2的下m行进行编码,并使用通过步骤S6进行了列交换后的奇偶校验矩阵H1’来进行解码即可。
另一方面,在使用行分割后的LDPC码的情况下,使用编码矩阵G2的所有的行来进行编码,在解码中,使用列交换后的奇偶校验矩阵H2’即可。
另外,在解码运算部(或者解码器)中,无需一定存储奇偶校验矩阵H1、H2这两者,只要有某一方的奇偶校验矩阵和关于行分割的信息,就能够生成另一方的奇偶校验矩阵。
在该情况下,仅对奇偶校验矩阵H1、H2的某一方(由解码运算部存储的一方)进行图3、图4内的步骤S6的列交换即可。
如上所述,本发明的实施方式1(图1~图4)的纠错编码方法具备:行分割工序,根据1个奇偶校验矩阵H1,将一部分或者所有的行中的每一个分割为2个以上的行;以及码构成工序,构成任意的编码率(行数)的多个LDPC码。
在行分割工序中,以使行分割后的奇偶校验矩阵H2的各行中包含的非零要素的数量不会成为由于行而有偏差的数量的方式,进行行分割。
另外,在行分割工序中,以在行分割后的奇偶校验矩阵H2中使尽可能多的行包括2的乘方数量的非零要素的方式,进行行分割。
另外,在行分割工序中,在将行分割后的奇偶校验矩阵H2的各行视为矢量时,以使矢量成为线性独立的关系的方式进行行分割。
另外,本发明的实施方式1的纠错编码方法具备对码长n相等而编码率“k/n”不同的多个LDPC码分别进行编码的编码工序(图3、图4)。
在编码工序中,仅准备与多个LDPC码中的编码率(行数)最大的最大LDPC码对应的编码矩阵G1,在对最大LDPC码以外的LDPC码进行编码时,根据与最大LDPC码对应的编码矩阵G1的部分矩阵进行编码。
与最大LDPC码对应的编码矩阵G1具有下三角的构造。
具体而言,编码工序包括生成与最大LDPC码对应的编码矩阵G1的编码矩阵生成工序。
编码矩阵生成工序具备:第一下三角化工序(步骤S1),对多个LDPC码中的编码率最小的最小LDPC码的奇偶校验矩阵进行下三角化;以及第一列交换工序(步骤S2),对多个LDPC码的奇偶校验矩阵H1实施在第一下三角化工序(步骤S1)时所进行的列交换。
另外,编码矩阵生成工序具备行追加工序(步骤S3、S4),在该行追加工序中,从已经进行了第一下三角化的矩阵的最上面的行,追加多个LDPC码中的已经进行了第一下三角化的最小LDPC码的编码率其次小的准最小LDPC码的奇偶校验矩阵的一部分的行。
而且,编码矩阵生成工序具备:第二下三角化工序(步骤S5),对于通过行追加工序(步骤S3、S4)追加了行的矩阵A,不破坏追加了的行以外所具有的下三角构造而对矩阵全体进行下三角化;以及第二列交换工序(步骤S6),对多个LDPC码的奇偶校验矩阵H1实施在第二下三角化工序(步骤S5)时进行的列交换。
另外,在本发明的实施方式1的码构成工序中,抽出1个奇偶校验矩阵H1的部分矩阵,生成新的奇偶校验矩阵,从而构成编码率比1个奇偶校验矩阵的LDPC码更小的LDPC码。
另外,在码构成工序中,对1个奇偶校验矩阵H1追加新的行,生成新的奇偶校验矩阵,从而构成编码率比1个奇偶校验矩阵H1的LDPC码更大的LDPC码。
这样,通过与可变编码率对应的高效的编码方法,能够实现在使码长n固定的状态下可以改变编码率的LDPC码生成方法,并得到不用改变码长n就能够调整LDPC码的编码率的纠错编码方法。
另外,在通信系统中应用了本发明的实施方式1的情况下,在与2种编码率的LDPC码对应的通信系统中,能够将2种编码率下的码长设为固定。
另外,能够在2种编码率之间共用编码矩阵,能够使编码运算的一部分通用化,所以能够减少编码运算部(或者编码器)的运算量、存储区域,并减小电路规模。
而且,关于列权重分布,如果在2种编码率下相等,且行分割前的奇偶校验矩阵H1的列权重分布是最佳值,则在2种编码率这双方下都成为高的纠错能力。
另外,能够在本发明的实施方式1中应用的行分割没有将1行分割为2行这样的限制,例如,既可以将1行分割为3行,另外也可以分割原来的奇偶校验矩阵H1的所有的行,还可以仅对一部分进行行分割。
由此,自由度高,且能够通过行分割来设定增加行数,所以能够使宽幅的编码率成为可变。
另外,本发明的实施方式1不限于仅以编码率的可变化为目的的情况,当目的是在使LDPC码的码长n固定的状态下调整信息比特长以及奇偶比特长而构成任意的编码率的LDPC码的情况下,也能够进行应用。
例如,虽然有时希望以与通信系统的帧格式吻合的方式构成LDPC码,但按照帧格式的要求来生成奇偶校验矩阵H1的列数以及行数并实现高性能是困难的。
为了实现它,首先,以使奇偶校验矩阵H1的列数(LDPC码的码长n)与帧格式吻合的方式生成奇偶校验矩阵H1,之后,通过行分割来增加奇偶校验矩阵H1的行数即可。
由此,能够不用改变码长n而按照1比特单位对信息序列长k和奇偶比特长进行调整,以使与帧格式吻合。
另外,这个调整方法在仅有LDPC码的码长n被确定而编码率“k/n”或者信息序列长k未被确定的情况下有效。
例如,在使用LDPC码来构成链接码(Concatenated code)时,根据帧格式的要求,在链接码全体中使用的奇偶比特长被确定,但在构成链接码的各纠错码的编码率未被确定的情况下,能够通过上述方案按照1比特单位来调整LDPC码的编码率。
另外,在LDPC码中,针对形成码字的每个比特,解码后的残留比特错误发生的概率不同。
即,根据是对应于奇偶校验矩阵H1的哪个列的比特,错误概率不同,所以如果如上所述进行行分割工序,则奇偶校验矩阵会变化,所以容易发生残留比特错误的列(码字中的比特位置)有可能会变化。
因此,在应用了本发明的实施方式1的纠错编码方法的通信系统中,在将设内码(inner code)为LDPC码的链接码用作纠错方式的情况下,根据作为内码的LDPC码的切换,错误比特的发生位置会变化,所以有可能会对外码(outer code)造成影响。
但是,对于通过本发明的实施方式1生成的编码矩阵G2以及奇偶校验矩阵H2,如果重排与信息序列对应的列,则能够抑制上述问题所致的影响。
例如,如果按照随机的顺序进行重排,则上述问题所致的影响变小。但是,此时需要对奇偶校验矩阵H2和编码矩阵G2进行相同的重排。
同样地,在本发明的实施方式1的纠错编码装置中,通过具备执行上述各工序的部件,也起到如上所述的作用效果。
(实施例2)
另外,在上述实施方式1(图1~图4)中,对奇偶校验矩阵H1进行行分割而生成了奇偶校验矩阵H2,但也可以代替行分割而使用行结合。
在该情况下,代替上述行分割工序,而使用根据1个奇偶校验矩阵来结合2个以上的行的行结合工序。
行结合是与行分割相反的操作,是通过将2个以上的行针对每个要素进行相加(结合)而设为1个行来减少行数的操作。
即,在对奇偶校验矩阵H2实施行结合而生成了使奇偶校验矩阵H2的行数减少了的奇偶校验矩阵H1的情况下,也能够通过上述(图3)编码矩阵G2的生成方法来生成编码矩阵G2。
在该情况下,首先,预先对奇偶校验矩阵H2实施行结合,生成奇偶校验矩阵H1。但是,需要在对奇偶校验矩阵H2进行行结合之前,预先将在各行结合中结合的行中的除了1个以外的所有的行分别配置到奇偶校验矩阵H2的最上面的行。
之后,进行图3内的步骤S1,在接下来的步骤S2中,不仅对于奇偶校验矩阵H1,而且对于奇偶校验矩阵H2也进行列交换。
另外,在步骤S3中,视作进行与生成奇偶校验矩阵H1时的行结合完全相反的行分割,生成行的配置为如上所述的奇偶校验矩阵H2。
之后的步骤S4~S6如上所述(图3)那样进行即可。
根据上述结构,在与2种编码率的LDPC码对应的通信系统中,能够使2种编码率下的码长成为固定。另外,能够在2种编码率之间共用编码矩阵,能够使编码运算的一部分通用化,所以能够减小编码运算或者编码器的运算量、存储区域、电路规模。
另外,如上所述,在LDPC码中,针对形成码字的每个比特,解码后的残留比特错误的发生概率不同,错误概率根据是与奇偶校验矩阵H1的哪个列对应的比特而会不同,所以如果如上所述进行行结合工序,则奇偶校验矩阵会变化,所以容易发生残留比特错误的列(码字中的比特位置)有可能会变化。
因此,在应用了本发明的实施方式2的纠错编码方法的通信系统中,在采用将内码设为LDPC码的链接码作为纠错方式的情况下,错误比特的发生位置由于作为内码的LDPC码的切换而会变化,所以有可能会对外码造成影响。
但是,与上述同样地,如果对于通过本发明的实施方式2生成的编码矩阵G2以及奇偶校验矩阵H2,重排与信息序列对应的列,则能够抑制上述问题所致的影响。
例如,如果按照随机的顺序进行重排,则上述问题所致的影响变小。但是,此时需要针对奇偶校验矩阵H2和编码矩阵G2进行相同的重排。
(实施例3)
另外,在上述实施方式1(图1~图4)中,生成了与奇偶校验矩阵H1以及对奇偶校验矩阵H1进行行分割而得到的奇偶校验矩阵H2这2种编码率对应的编码矩阵G2,但也可以针对将奇偶校验矩阵H2进一步进行行分割而生成的奇偶校验矩阵H3(参照图5),生成编码矩阵G3(参照图6),而且如图7那样重复进行同样的操作,生成与c(≥3)种编码率(c-1次的行分割)对应的编码矩阵Gc以及奇偶校验矩阵Hc。
图5是示出通过本发明的实施方式3进一步进行行分割(第2次)而生成的奇偶校验矩阵H3的说明图,图6是示出通过本发明的实施方式3而生成的编码矩阵G3的说明图。
另外,图7是示出本发明的实施方式3的编码矩阵G3的生成方法的流程图。
以下,参照图5~图7,说明本发明的实施方式3的纠错编码方法中的编码矩阵G3的生成方法。
其中,此处设为通过上述(图3)编码矩阵G2的生成方法已经得到了编码矩阵G2,而且设为得到了实施与编码矩阵G2对应的列交换后的奇偶校验矩阵H1、H2。
在图5中,关于奇偶校验矩阵H3,通过针对1次行分割后的矩阵H2进一步实施第2次行分割,使行数增加了与ri的初始值(i=3)相当的量。
同样地,在图6中,编码矩阵G3(与3种编码率对应)相对于与第一次行分割对应的编码矩阵G2,使行数进一步增加与ri(i=3)相当的量。
图7的流程图与上述(图3)基本上相同,与图3较大的不同点仅在于如下两点:由于已经得到了编码矩阵G2,所以不存在与图3中的步骤S1、S2相应的处理;将与图3中的步骤S3~S6相应的处理(步骤S11~S14)重复进行与想改变的编码率的数量相应的次数。
在图7中,首先将循环重复变量i设置为初始值(i=3)(步骤S10),重复进行循环内部的步骤S11~S14。
在最终的循环处理(步骤S15)中,重复进行步骤S11~S14的处理,每当步骤S14结束时,返回到步骤S10的处理。
在步骤S10中,每当步骤S14结束时,使变量i的值增加“1”,如果变量i对于想改变的编码率的数量c满足“i≤c”的关系,则再次执行循环内部的步骤S11~S14,如果成为“i>c”的关系,则结束图7的处理例程。
另外,在以下的说明中,矩阵H(i-1)表示矩阵Hs(s=i-1)。
在接着初始化处理(步骤S10)的步骤S11中,对奇偶校验矩阵H(i-1)进行行分割,如图5所示,生成ri行的奇偶校验矩阵Hi。
与上述实施方式1同样地,以使属于奇偶校验矩阵Hi的各行矢量成为线性独立的方式进行步骤S11的行分割。
接下来,将在步骤S11的行分割中增加了的ri行附加到编码矩阵G(i-1)(步骤S12)。
在步骤S12中,如上述实施方式1所述,分别附加在各行分割中生成的行中的除了1行以外的所有行。
接下来,在与上述实施方式1的情况同样的限制下进行下三角化,如图6所示,生成编码矩阵Gi(步骤S13)。
最后,对奇偶校验矩阵H1~Hi的全部,进行步骤S13的列交换(步骤S14),并转移到循环处理(步骤S15)。
直到对编码率(行数)最大的LDPC码的奇偶校验矩阵进行步骤S13(与上述步骤S5对应)的处理为止,重复进行以上的步骤S11~S14(与上述步骤S3~S6对应)。
另外,如上述实施方式1所述,如果在解码侧存储了对哪个行如何进行行分割的信息,则无需在步骤S14中对所有奇偶校验矩阵H1~Hi进行列交换,根据行分割的信息,仅对一部分的奇偶校验矩阵进行列交换即可。
例如,如果以如下方式构成解码方法(或者解码装置),则在图7内的步骤S14中仅对奇偶校验矩阵Hi进行列交换即可,其中,所述方式为:以使在解码侧仅存储奇偶校验矩阵Hc,具有在对哪个行进行相加时(进行每个要素的异或时)才会得到行分割前的奇偶校验矩阵H(c-1)的信息,并且具有在对奇偶校验矩阵H(c-1)的哪个行进行相加时才会成为奇偶校验矩阵H(c-2)的信息,而且以下同样地具有能够恢复直至原来的奇偶校验矩阵H1为止的所有奇偶校验矩阵的信息。
这是因为,在各循环中,只要仅对奇偶校验矩阵Hi进行列交换,就能够得到奇偶校验矩阵Hc。
另外,在上述说明中,将原来的奇偶校验矩阵H1作为编码率不同的多个LDPC码中的1个而设为可变的结构,但无需一定包括奇偶校验矩阵H1而作为可变的1个LDPC码。
例如,如果将对奇偶校验矩阵H1实施行分割而得到的奇偶校验矩阵H2通过上述处理重置为记为奇偶校验矩阵H1的奇偶校验矩阵,并对新的奇偶校验矩阵H1应用上述编码矩阵的生成方法,则能够生成虽然不对应于原来的奇偶校验矩阵、但与进行多次行分割而得到的多个奇偶校验矩阵对应的编码矩阵。
如上所述,根据本发明的实施方式3,能够得到与上述实施方式1等同的作用效果,而且能够通过编码矩阵Gc进行与c种奇偶校验矩阵H1~Hc对应的编码,能够使编码运算的一部分在不同的码率之间通用,能够减小编码运算、编码器的运算量、存储区域以及电路规模。
另外,能够在可变的所有编码率下,使码长成为固定。
而且,列权重分布在可变设定的所有编码率下相等,所以只要奇偶校验矩阵H1的列权重分布是最佳值,就能够在可变的所有编码率下实现高的纠错能力。
而且,即使在如上述实施方式2那样代替行分割而应用了行结合的情况下,也能够与本发明的实施方式3同样地构成。在该情况下,如果将原来的奇偶校验矩阵设为Hc,并将通过行结合而得到的奇偶校验矩阵,从行数多的开始依次置换为H(c-1)、H(c-2)、...、H1,之后,与上述行分割的情况同样地,从编码矩阵G1依次生成编码矩阵G2、G3、...、Gc,则可得到与奇偶校验矩阵H1~Hc对应的编码矩阵Gc。
(实施例4)
另外,在上述实施方式1~3(图1~图7)中,示出了纠错编码方法(或者装置)中的编码矩阵G的生成方法(或者装置),但也可以如图8所示,使用纠错编码方法(或者装置)来构成通信系统。
图8是示出本发明的实施方式4的通信系统的框结构图,示出使用了上述实施方式1~3的纠错编码方法(或者装置)的通信系统。在该情况下,特别是示出了具备使用了在上述实施方式1(图3、图4)中生成的编码矩阵G2的高效的编码器100的结构例。
在图8中,通信系统由发送侧装置以及接收侧装置构成,发送侧装置具备:编码器100,根据发送比特串生成纠错码的码字;以及调制器200,根据来自编码器100的码字生成调制信号。
来自调制器200的调制信号经由通信路径300被发送,并由接收侧装置接收。
接收侧装置具备:解调器400,对从调制器200接收到的调制信号进行解调;以及解码器500,根据来自解调器400的解调信号进行纠错码的解码。
编码器100根据发送比特串生成奇偶比特,并计算码字。
调制器200依照码字进行调制,根据通信方式生成电波、光或者电信号,并作为调制信号进行发送。
从调制器200发送的调制信号在通过通信路径300被附加了噪声之后,由接收侧装置接收。
解调器400对接收到的调制信号进行解调,将解调信号输入到解码器500。
解码器500将所解码的结果作为成为发送信息的推测比特串而输出。
图9是示出图8内的编码器100的内部结构的框图,示出了与2种编码率对应的编码器100的一个例子。
在图9中,编码器100具备:编码率切换器101,切换LDPC码的编码率;输入电路102,被输入发送比特串;编码电路103,对经由输入电路102的输入信号进行编码;选择器104,选择输入信号;编码电路105,对经由选择器104的输入信号进行编码;输出电路106,控制编码电路105的输出信号而生成码字;以及存储器107,存储各种信息。
另外,将在图9所示的编码器100中使用的LDPC码的码长设为n比特。
另外,编码率切换器101构成为能够切换与2种信息序列长(k比特、“k-r”比特)对应的2种编码率(“k/n”、“(k-r)/n”)。
编码率切换器101切换设定在通信系统中使用的编码率信息,输入到输入电路102以及选择器104。
另外,关于在通信系统中使用的编码率,是通过预先设定、或者一边与接收侧装置取得同步一边自动设定、或者利用外部的切换开关(未图示)等来手动地切换、或者其他任意方案来决定的。
输入电路102控制所输入的发送比特串,将发送比特串临时存储到存储器107,根据编码率信息(“k-r”或者k),对编码电路103或者选择器104输入基于从编码率切换器101输入的编码率信息的比特串。
即,输入电路102在使用信息序列长“k-r”比特的编码率“(k-r)/n”的情况下,对编码电路103输入“k-r”比特的比特串,在使用信息序列长k比特的编码率“k/n”的情况下,对选择器104输入k比特的比特串。
编码电路103根据所输入的“k-r”比特,首先生成r比特的奇偶比特。
此时,由编码电路103生成的是根据图4中的编码矩阵G2的第一行至第r行而计算的奇偶比特。即,使用通过行分割而增加的r行、和所输入的“k-r”比特的发送比特串,生成r比特的奇偶比特串。
另外,编码电路103最终将“k-r”比特的发送比特串与所生成的r比特的奇偶比特串进行结合,并将k比特的比特串输入到选择器104。
选择器104根据由编码率切换器101设定的编码率信息,在使用编码率“(k-r)/n”的情况下,选择来自编码电路103的k比特的比特串,在使用编码率“k/n”的情况下,选择从输入电路102直接输入的k比特的比特串,输入到编码电路105。
编码电路105使用从选择器104输入的k比特的比特串进行编码。即,使用图4中的编码矩阵G2的下侧“n-k”行,生成“n-k”比特的奇偶比特。
编码矩阵G2的下侧“n-k”行对应于原来的奇偶校验矩阵H1和行分割后的奇偶校验矩阵H2这双方,所以能够在两方的编码率下共用。
编码电路105将所生成的“n-k”比特结合到输入比特串,并将最终的n比特的比特串输入到输出电路106。
最后,输出电路106根据调制器200的结构,使用存储器107进行编码后的比特串的输出控制,生成成为编码器100的输出信号的码字而输入到调制器200。
另外,在上述说明中,仅在输入电路102以及输出电路106中使用了存储器107,但也可以根据通信系统的规格而在其以外的部分中使用。
如上所述,根据本发明的实施方式4(图8、图9),在使用了本发明的实施方式1~3的纠错编码方法(或者装置)的通信系统中,在编码器100内设置编码率切换器101、选择器104以及编码电路103、105,能够切换多个LDPC码,所以能够在2种编码率的LDPC码中共用编码电路105,能够削减电路规模。
另外,在图9中,示出了编码器100的一个例子,但只要是能够在2种编码率的LDPC码中共用编码器100内的编码电路105那样的结构,就能够起到同样的效果。
同样地,本发明的实施方式4的通信系统中应用的纠错编码装置具备:行分割部件(图3、图4内的步骤S3),根据1个奇偶校验矩阵,将一部分或者所有行的每个行分割为2个以上的行;码构成部件(步骤S5),构成任意的编码率的多个LDPC码;以及编码部件(编码器100),对由码构成部件生成的码长相等而编码率不同的多个LDPC码分别进行编码。
编码器100仅具有与多个LDPC码中的编码率最大的最大LDPC码对应的编码矩阵,在对最大LDPC码以外的LDPC码进行编码时,根据与最大LDPC码对应的编码矩阵的部分矩阵进行编码。
另外,编码器100具备:基于与最大LDPC码对应的编码矩阵的最大编码部件;编码率选择部件(编码率切换器101),从多个LDPC码中选择1个;部分矩阵选择部件(选择器104),从编码矩阵中选择与由编码率选择部件选择的LDPC码对应的部分矩阵;以及部分矩阵编码部件(编码电路105),仅使用基于最大编码部件中的由部分矩阵选择部件选择的部分矩阵的部分来进行编码。
由此,如上所述,能够在2种编码率(“k/n”、“(k-r)/n”)的LDPC码中共用编码器100内的最靠近输出侧的编码电路105,所以能够削减电路规模。
(实施例5)
另外,在上述实施方式4(图8、图9)中,使用了对2种编码率进行可变设定的编码器100,但也可以如图10所示,使用对3种编码率进行可变设定的编码器100A。
图10是示出使用了本发明的实施方式5的纠错编码方法(或者装置)的通信系统的编码器100A的内部结构的框图,对与上述(参照图8、图9)同样的部分,附加与上述相同的符号而省略详细叙述。
另外,图10内的编码器100A、编码率切换器101A以及输入电路102A对应于上述(图9)编码器100、编码率切换器101以及输入电路102。
在图10中,编码器100A除了上述构成要素103~107以外,还具备与输入电路102A连接的编码电路108以及选择器109。
选择器109被插入到输入电路102A与编码电路103之间,编码电路108被插入到输入电路102A与选择器109之间。
编码率切换器101A构成为能够切换与3种信息序列长(k比特、“k-r”比特、“k-r-ri”比特)对应的3种编码率(“k/n”、“(k-r)/n”、“(k-r-ri)/n”)。
在编码率切换器101A中,在设定为使用进行了2次行分割之后的奇偶校验矩阵H3(参照图5)的情况下,输入电路102A对编码电路108输入“k-r-ri”比特的信息比特。
编码电路108对所输入的比特串追加ri比特的奇偶比特,将ri比特的比特串输入到选择器109。此时,根据图6内的编码矩阵G3的上侧ri行,计算由编码电路108追加的奇偶比特。
选择器109根据由编码率切换器101A切换的编码率,选择输入比特串。
即,选择器109在使用进行了2次行分割的LDPC码的情况下,选择来自编码电路108的比特串(k-r比特)而输入到编码电路103,在使用进行了1次行分割的LDPC码的情况下,选择来自输入电路102A的比特串(k-r比特)而输入到编码电路103。
以下,与上述实施方式3(图9)同样地,通过编码电路103~输出电路106,生成编码器100A的输出信号(码字)而输入到调制器200。
如上所述,根据本发明的实施方式5(图10)的通信系统,能够在3种编码率(“k/n”、“(k-r)/n”、“(k-r-ri)/n”)的LDPC码中共用编码器100A内的最靠近输出侧的编码电路105,能够在2种编码率(“k/n”、“(k-r)/n”)的LDPC码中共用编码电路105的上段侧的编码电路103,所以能够削减电路规模。
另外,在图10中,示出了编码器100A的一个例子,但只要是能够在多个编码率的LDPC码中共用编码电路105、103那样的结构,就能够起到等同的作用效果。
另外,在图10中,除了与上述实施方式4(图9)同样的结构以外,在编码电路103与输入电路102A之间还插入了编码电路108以及选择器109,而且在编码电路108与输入电路102A之间,追加插入新的编码电路以及选择器(未图示),由此,还能够构成对4种编码率进行可变设定的编码器。以下同样地,还能够依次追加插入新的编码电路以及选择器,构成对5种以上的编码率进行可变设定的编码器。
(实施例6)
另外,在上述实施方式1~3(图1~图7)中,示出应用了在成为基本的奇偶校验矩阵与通过行分割而生成的奇偶校验矩阵之间使编码矩阵通用化的编码矩阵生成方法的纠错编码方法(或者装置),但即使在其他情况下也能够构成同样的编码矩阵生成方法。
以下,说明本发明的实施方式6的纠错编码方法(或者装置)。
在本发明的实施方式6中,设在列数相等的2个奇偶校验矩阵H1、H2的一方成为另一方的奇偶校验矩阵的部分矩阵的情况下,应用与上述同样的编码矩阵生成方法。
此处,设奇偶校验矩阵H1是奇偶校验矩阵H2的部分矩阵,并设奇偶校验矩阵H2的行矢量是线性独立。此时,奇偶校验矩阵H1的行矢量也一定成为线性独立。
首先准备奇偶校验矩阵H1并对它追加新的行而生成奇偶校验矩阵H2、或者选择奇偶校验矩阵H2的一部分的行并将由这些行构成的部分矩阵作为奇偶校验矩阵H1等,从而构成上述关系的2个奇偶校验矩阵H1、H2。
处于这种关系的2个LDPC码由于能够共用解码运算部的一部分,所以适用于与可变编码率对应的通信系统,但与上述实施方式1中的行分割的情况同样地,编码方法成为问题。
在本发明的实施方式6中,示出如上述实施方式1那样能够在2个LDPC码中共用化的编码矩阵G2的生成方法。
图11是示出本发明的实施方式6的处理步骤的流程图,示出了能够进行奇偶校验矩阵H1、H2的编码的编码矩阵G2的生成方法。
另外,图11内的步骤S21~S25大体对应于上述(参照图3)步骤S1、S2、S4~S6。
首先,对一方的奇偶校验矩阵H1进行基本行操作以及列交换,生成编码矩阵G1(步骤S21)。
接下来,对奇偶校验矩阵H2也实施步骤S21的列交换(步骤S21)。
接下来,对编码矩阵G1的最上面的行,附加奇偶校验矩阵H2的行(步骤S23)。此时,对编码矩阵G1的最上面的行附加的行是奇偶校验矩阵H1与奇偶校验矩阵H2的差分。即,附加奇偶校验矩阵H2的行中的与奇偶校验矩阵H1的任一行都不同的所有行。
接下来,进行针对在步骤S23中附加的行的基本行操作、和针对行全体的列交换,并进行下三角化,从而生成编码矩阵G2(步骤S24)。
在与上述(图3、图4)步骤S5同样的限制下,进行此处执行的基本行操作以及列交换。即,设在步骤S24中附加的行与编码矩阵G1之间不进行行交换,对于下侧m行已经成为下三角矩阵的部分(右侧的m列)不进行列交换。
最后,对奇偶校验矩阵H1、H2进行与步骤S24相同的列交换(步骤S25),结束图11的处理例程。
但是,如果在解码方法(以及装置)中仅存储奇偶校验矩阵H2,并存储奇偶校验矩阵H2的哪个部分矩阵成为奇偶校验矩阵H1的信息,则仅对奇偶校验矩阵H2进行步骤S25的列交换处理即可。
在上述说明中,叙述了奇偶校验矩阵H2的部分矩阵直接为奇偶校验矩阵H1的情况,但是如果任意地变更2个奇偶校验矩阵H1、H2的列、行的排列,并在变更后的矩阵中一方成为另一方的部分矩阵,则能够通过上述方法来生成编码矩阵。
即,预先变更列以及行的排列而使2个奇偶校验矩阵H1、H2成为部分矩阵的关系,并通过上述方法生成编码矩阵即可。另外,即使变更了行、列的排列,也几乎不会对纠错能力造成影响。
另外,在上述说明中,叙述了2个奇偶校验矩阵H1、H2,但对于3个奇偶校验矩阵H1、H2、H3,也能够通过同样的方法来构成与3个奇偶校验矩阵H1~H3对应的编码矩阵G3。
在该情况下,设奇偶校验矩阵H1成为奇偶校验矩阵H2的部分矩阵,且奇偶校验矩阵H2成为奇偶校验矩阵H3的部分矩阵,首先,通过图11的编码矩阵的生成方法,生成与奇偶校验矩阵H1、H2对应的编码矩阵G2。
接下来,对编码矩阵G2的最上面的行,附加奇偶校验矩阵H3与奇偶校验矩阵H2的差分的行,并进行图11中的下三角化处理(步骤S24)和列交换处理(步骤S25),从而能够生成与3个奇偶校验矩阵H1~H3对应的编码矩阵G3。其中,设奇偶校验矩阵H3的行矢量为线性独立。
同样地,对于4个以上的奇偶校验矩阵,如果具有上述部分矩阵的关系,并且行数最多的奇偶校验矩阵的行矢量为线性独立,则也能够生成与4个以上的奇偶校验矩阵对应的编码矩阵。
如上所述,根据在本发明的实施方式6(图11)的纠错编码方法(或者装置)中应用的编码矩阵生成方法,能够在1个编码矩阵中编码率不同的多个LDPC码的编码中使用所生成的编码矩阵G2。
另外,如果在可变编码率的通信系统中应用本发明的实施方式6的纠错编码方法(或者装置),则与上述同样地,能够减小编码运算或者编码器的存储区域、运算量。
另外,对于在本发明的实施方式6中生成的编码矩阵G2,也能够应用与上述实施方式4、5(图9、图10)中的编码器100、100A同样的结构,通过在编码率不同的多个LDPC码中共用编码电路105,能够削减电路规模。
而且,根据本发明的实施方式6,能够在可变的编码率的LDPC码中使码长全部相同。

Claims (10)

1.一种纠错编码方法,进行码长相等而编码率不同的多个LDPC码的编码,其特征在于,
具备编码工序,在该编码工序中,在进行所述多个LDPC码中的与对应于第一编码率的第一LDPC码不同的编码率所对应的LDPC码的编码时,基于根据用于进行所述第一LDPC码的编码的第一编码矩阵或者所述第一编码矩阵的部分矩阵而生成、并用于进行码长与所述第一LDPC码相等而编码率与所述第一LDPC码不同的LDPC码的编码的编码矩阵,进行编码,
其中,用于进行所述第一LDPC码的编码的编码矩阵具有下三角的构造,
所述编码工序包括编码矩阵生成工序,在该编码矩阵生成工序中生成用于进行码长与所述第一LDPC码相等而编码率比所述第一LDPC码小的第二LDPC码的编码的第二编码矩阵,
所述编码矩阵生成工序包括:
第一下三角化工序,对所述第一LDPC码的第一奇偶校验矩阵进行下三角化而生成所述第一编码矩阵;
第一列交换工序,对所述第一奇偶校验矩阵实施在所述第一下三角化工序时所进行的列交换,生成第二奇偶校验矩阵;
行增加工序,增加进行了所述第一列交换工序的第二奇偶校验矩阵的行数,生成与所述第二LDPC码的编码率对应的第三奇偶校验矩阵;
行附加工序,将通过所述行增加工序增加的行附加到所述第一编码矩阵;以及
第二下三角化工序,对于通过所述行附加工序附加了行的第一编码矩阵,不破坏所附加的行以外所具有的下三角构造而对矩阵全体进行下三角化,生成所述第二编码矩阵。
2.根据权利要求1所述的纠错编码方法,其特征在于,
所述编码矩阵生成工序包括第二列交换工序,在该第二列交换工序中,对所述第二奇偶校验矩阵实施在所述第二下三角化工序时所进行的列交换,生成第四奇偶校验矩阵,并且对所述第三奇偶校验矩阵实施在所述第二下三角化工序时所进行的列交换,生成第五奇偶校验矩阵。
3.根据权利要求2所述的纠错编码方法,其特征在于,
所述编码矩阵生成工序包括重复工序,在该重复工序中,从所述多个LDPC码中的编码率最大的LDPC码的奇偶校验矩阵起按顺序至编码率最小的LDPC码的奇偶校验矩阵为止,将所述第四奇偶校验矩阵作为第一奇偶校验矩阵,重复进行所述第一下三角化工序、所述第一列交换工序、所述行增加工序、所述行附加工序、所述第二下三角化工序以及所述第二列交换工序。
4.根据权利要求1所述的纠错编码方法,其特征在于,
所述第一奇偶校验矩阵是抽出编码率比所述第一LDPC码小的奇偶校验矩阵的部分矩阵而生成的。
5.根据权利要求1所述的纠错编码方法,其特征在于,
在所述行增加工序中,对编码率比所述第一LDPC码大的奇偶校验矩阵的部分矩阵追加新的行来增加行。
6.根据权利要求1所述的纠错编码方法,其特征在于,
所述第一奇偶校验矩阵是结合多个奇偶校验矩阵的行而生成的。
7.根据权利要求1所述的纠错编码方法,其特征在于,
在所述行增加工序中,实施将所述第二奇偶校验矩阵的行分割为2个以上的行的行分割来增加行数。
8.一种纠错编码装置,进行码长相等而编码率不同的多个LDPC码的编码,其特征在于,
具备编码部件,该编码部件在进行所述多个LDPC码中的与对应于第一编码率的第一LDPC码不同的编码率所对应的LDPC码的编码时,基于根据用于进行所述第一LDPC码的编码的第一编码矩阵或者所述第一编码矩阵的部分矩阵而生成、并用于进行码长与所述第一LDPC码相等而编码率与所述第一LDPC码不同的LDPC码的编码的编码矩阵,进行编码,
其中,用于进行所述第一LDPC码的编码的编码矩阵具有下三角的构造,
所述纠错编码装置还具有编码矩阵生成部件,在该编码矩阵生成部件中生成用于进行码长与所述第一LDPC码相等而编码率比所述第一LDPC码小的第二LDPC码的编码的第二编码矩阵,
所述编码矩阵生成部件包括:
第一下三角化部件,对所述第一LDPC码的第一奇偶校验矩阵进行下三角化而生成所述第一编码矩阵;
第一列交换部件,对所述第一奇偶校验矩阵实施在第一下三角化时所进行的列交换,生成第二奇偶校验矩阵;
行增加部件,增加进行了第一列交换的第二奇偶校验矩阵的行数,生成与所述第二LDPC码的编码率对应的第三奇偶校验矩阵;
行附加部件,将通过所述行增加部件增加的行附加到所述第一编码矩阵;以及
第二下三角化部件,对于通过所述行附加部件附加了行的第一编码矩阵,不破坏所附加的行以外所具有的下三角构造而对矩阵全体进行下三角化,生成所述第二编码矩阵。
9.根据权利要求8所述的纠错编码装置,其特征在于,
所述编码部件包括:
基于与所述第一LDPC码对应的编码矩阵的第一编码部件;
编码率选择部件,从所述多个LDPC码中选择1个;
部分矩阵选择部件,从所述编码矩阵中选择与由所述编码率选择部件选择的LDPC码对应的部分矩阵;以及
部分矩阵编码部件,仅使用基于由所述部分矩阵选择部件选择的部分矩阵的部分来进行编码。
10.一种通信系统,其特征在于,是使用了权利要求8或者9所述的纠错编码装置的通信系统,能够切换所述多个LDPC码。
CN201080051934.8A 2009-11-17 2010-11-11 纠错编码方法和装置以及使用了它们的通信系统 Active CN102612806B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009-262332 2009-11-17
JP2009262332 2009-11-17
PCT/JP2010/070118 WO2011062111A1 (ja) 2009-11-17 2010-11-11 誤り訂正方法および装置ならびにそれを用いた通信システム

Publications (2)

Publication Number Publication Date
CN102612806A CN102612806A (zh) 2012-07-25
CN102612806B true CN102612806B (zh) 2015-01-28

Family

ID=44059590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080051934.8A Active CN102612806B (zh) 2009-11-17 2010-11-11 纠错编码方法和装置以及使用了它们的通信系统

Country Status (5)

Country Link
US (1) US8631299B2 (zh)
EP (1) EP2503698B1 (zh)
JP (1) JP5442024B2 (zh)
CN (1) CN102612806B (zh)
WO (1) WO2011062111A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5523064B2 (ja) * 2009-11-13 2014-06-18 三菱電機株式会社 復号装置及び方法
JP5485069B2 (ja) * 2010-08-06 2014-05-07 パナソニック株式会社 誤り訂正復号装置及び誤り訂正復号方法
US8839069B2 (en) * 2011-04-08 2014-09-16 Micron Technology, Inc. Encoding and decoding techniques using low-density parity check codes
US9148175B2 (en) * 2011-05-31 2015-09-29 Mitsubishi Electric Corporation Error correction coding device, error correction decoding device and method therefor
US8751906B2 (en) * 2011-06-13 2014-06-10 Marvell World Trade Ltd. Systems and methods for operating on a storage device using a life-cycle dependent coding scheme
KR101922990B1 (ko) 2011-11-11 2018-11-28 삼성전자주식회사 멀티미디어 통신 시스템에서 준순환 저밀도 패리티 검사 부호 송/수신 장치 및 방법
US9154261B2 (en) * 2013-01-16 2015-10-06 Broadcom Corporation Low density parity check (LDPC) coding in communication systems
US9178653B2 (en) * 2013-01-16 2015-11-03 Broadcom Corporation Very short size LDPC coding for physical and/or control channel signaling
US9003257B1 (en) * 2013-09-19 2015-04-07 U-Blox Ag Low density parity check encoder and encoding method
JP5792256B2 (ja) 2013-10-22 2015-10-07 日本電信電話株式会社 疎グラフ作成装置及び疎グラフ作成方法
WO2015133288A1 (ja) * 2014-03-04 2015-09-11 三菱電機株式会社 Fecフレーム処理装置およびfecフレーム処理方法
CA2864630C (en) * 2014-08-14 2017-05-30 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 64800 and code rate of 4/15, and low density parity check encoding method using the same
US9432052B2 (en) * 2014-09-18 2016-08-30 Broadcom Corporation Puncture-aware low density parity check (LDPC) decoding
CN105811996B (zh) 2014-12-30 2019-12-06 华为技术有限公司 一种基于准循环ldpc的数据处理方法及系统
US9722633B2 (en) * 2015-02-11 2017-08-01 Mitsubishi Electric Research Laboratories, Inc. Method and system for reliable data communications with adaptive multi-dimensional modulations for variable-iteration decoding
CN108352845B (zh) * 2015-11-10 2021-02-23 华为技术有限公司 用于对存储数据进行编码的方法以及装置
EP3264610A1 (en) * 2016-06-27 2018-01-03 Alcatel Lucent Forward error correction with variable coding rate
US10509603B2 (en) 2016-07-29 2019-12-17 Western Digital Technologies, Inc. Hierarchical variable code rate error correction coding
EP3477865B1 (en) * 2016-08-19 2021-07-28 Huawei Technologies Co., Ltd. Basis matrix generating method, coding/decoding method and apparatus for ldpc codes
JP2018098774A (ja) * 2016-12-14 2018-06-21 日本放送協会 送信装置、受信装置及びチップ
WO2019013663A1 (en) * 2017-07-13 2019-01-17 Huawei Technologies Co., Ltd GENERAL LOW DENSITY PARITY CHECK CODES (GLDPC)
CN112136276B (zh) * 2018-05-29 2023-08-22 三菱电机株式会社 发送机、接收机、通信系统、编码率的变更方法、控制电路及存储介质
US11016844B2 (en) * 2019-03-15 2021-05-25 Toshiba Memory Corporation Error correction code structure

Family Cites Families (7)

* Cited by examiner, † Cited by third party
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
WO2007091327A1 (ja) 2006-02-09 2007-08-16 Fujitsu Limited Ldpc検査行列生成方法及び検査行列生成器並びに符号再送方法
KR20080102902A (ko) 2007-05-22 2008-11-26 삼성전자주식회사 가변 부호화율을 가지는 ldpc 부호 설계 방법, 장치 및그 정보 저장 매체
JP4858335B2 (ja) 2007-07-10 2012-01-18 ソニー株式会社 符号化方法および符号化装置
JP4856608B2 (ja) * 2007-09-07 2012-01-18 日本放送協会 送信装置及び受信装置、並びに送信方法
JP4645645B2 (ja) * 2007-12-28 2011-03-09 住友電気工業株式会社 復号装置及び検査行列生成方法
US8433971B2 (en) * 2009-04-29 2013-04-30 Broadcom Corporation Communication device architecture for in-place constructed LDPC (low density parity check) code

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Zhiyong He et al.."LDPC Coded Wireless Networks with Adaptive Spectral Efficiency".《Circuits and Systems for Communications,2008. ICCSC 2008. 4th IEEE International Conference on,IEEE》.2008,第45-49页. *

Also Published As

Publication number Publication date
JPWO2011062111A1 (ja) 2013-04-04
US8631299B2 (en) 2014-01-14
CN102612806A (zh) 2012-07-25
EP2503698A1 (en) 2012-09-26
WO2011062111A1 (ja) 2011-05-26
EP2503698A4 (en) 2013-06-26
JP5442024B2 (ja) 2014-03-12
EP2503698B1 (en) 2018-02-14
US20120210189A1 (en) 2012-08-16

Similar Documents

Publication Publication Date Title
CN102612806B (zh) 纠错编码方法和装置以及使用了它们的通信系统
US11616514B2 (en) Method and apparatus for channel encoding and decoding in a communication system using a low-density parity check code
KR102395220B1 (ko) 길이가 64800이며, 부호율이 7/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
CN101073205B (zh) 低密度奇偶校验编码器和解码器以及低密度奇偶校验编码和解码方法
JP4602418B2 (ja) 検査行列生成方法、符号化方法、復号方法、通信装置、符号化器および復号器
KR100833515B1 (ko) 가변 정보 길이 및 가변 부호율을 가진 ldpc 부호의패리티 검사 행렬 생성 방법, 부/복호화 방법 및 이를이용하는 장치
KR102429513B1 (ko) 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
CA2881540C (en) Modulator and modulation method using non-uniform 16-symbol signal constellation for low-density parity check codeword having 4/15 code rate
KR102429457B1 (ko) 길이가 16200이며, 부호율이 3/15인 ldpc 부호어 및 16-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20210098896A (ko) 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 4096-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160089766A (ko) 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20220110714A (ko) 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 4096-심볼 맵핑에 상응하는 bicm 수신 장치 및 방법
WO2006068348A1 (en) Low density parity check encoder using costas array, and channel encoder of high speed portable internet system comprising the same and channel encoding method
Jang et al. Design of LDPC coded BICM in DVB broadcasting systems with block permutations
CN108270448B (zh) 准循环低密度奇偶校验编码方法及装置
KR20090064709A (ko) Ldpc 부호의 패리티 검사 행렬 생성 장치 및 그방법과, 그를 이용한 ldpc 부/복호화 장치
KR20210098413A (ko) 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 4096-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102371702B1 (ko) 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102260748B1 (ko) 길이가 64800이며, 부호율이 7/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102287631B1 (ko) 길이가 64800이며, 부호율이 5/15인 ldpc 부호어 및 4096-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법

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