JP4558037B2 - 良好な機能を持つ不規則な短縮ldpcコードのコード構成 - Google Patents

良好な機能を持つ不規則な短縮ldpcコードのコード構成 Download PDF

Info

Publication number
JP4558037B2
JP4558037B2 JP2007502126A JP2007502126A JP4558037B2 JP 4558037 B2 JP4558037 B2 JP 4558037B2 JP 2007502126 A JP2007502126 A JP 2007502126A JP 2007502126 A JP2007502126 A JP 2007502126A JP 4558037 B2 JP4558037 B2 JP 4558037B2
Authority
JP
Japan
Prior art keywords
column
matrix
sub
code
sections
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
JP2007502126A
Other languages
English (en)
Other versions
JP2007525931A (ja
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.)
Motorola Solutions Inc
Original Assignee
Motorola Inc
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=35310751&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP4558037(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Motorola Inc filed Critical Motorola Inc
Publication of JP2007525931A publication Critical patent/JP2007525931A/ja
Application granted granted Critical
Publication of JP4558037B2 publication Critical patent/JP4558037B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/618Shortening and extension of 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
    • 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/1165QC-LDPC codes as defined for the digital video broadcasting [DVB] specifications, e.g. DVB-Satellite [DVB-S2]
    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Error Detection And Correction (AREA)
  • Dc Digital Transmission (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Detection And Correction Of Errors (AREA)

Description

本発明は概してデータのエンコード及びデコードに関し、より詳細には、データを低密度パリティ・チェック(LDPC:Low-Density Parity-Check)コードを利用してエンコード及びデコードする方法及び装置に関する。
低密度パリティ・チェック(LDPC)コードは、低密度擬似ランダム2進行列であるパリティ・チェック行列Hにより定義される。複数のコード・レート及びブロック・サイズをサポートする必要はあるが、実用上の理由から、単一H行列が好ましい場合がある。この場合、複数のコード・レート及びブロック・サイズは、体系的LDPCコードを短くすることにより実現することができる。
k個の情報ビットをn個のコード化ビットにマッピングする体系的コードでは、
コード化ビットの最初のk個のビットは情報ビットである。短縮を行なう場合、情報ビットのうちのL個のビットがゼロに設定され、該当するゼロがコード化ビットから除去される。短縮は通常、最初のL個の情報ビットをゼロに設定する(論理的に、あるいは物理的に)ことにより行なわれる。幾つかのエンコーダでは、先頭部分のゼロによってエンコーダの状態が変わることはないので、これらのゼロはエンコーダ回路に転送する必要はない。LDPCコードの場合、最初のL個の情報ビットをゼロに設定することにより行なわれる短縮は2つの等価な方法により行なうことができる。第1に、kビット情報ベクトルはLビットをゼロとすることにより設定することができ、これらのゼロは一般性を失うことなく、後続の最初のL個の情報ビット位置に位置すると推定される。長さkの情報ベクトルはエンコーダ((n−k)行n列の非短縮H行列または等価なk行n列の生成行列Gに基づく)に転送することができ、エンコード後に、L個のゼロを続いてコード化ビットから除去することができる。第2に、短縮情報ベクトルはエンコーダに渡すことができ、このエンコーダはエンコードを、最初のL列が除去された(n−k)行(n−L)列の短縮H行列、または等価な(k−L)行(n−L)列の短縮G行列に基づいて行なう。しかしながら、結果として得られる短縮LDPCコード(群)は機能が低下する恐れがある。何故なら、これらのコードの重み分布が、当該コード・レート及びブロック・サイズに関して専用設計されるコードよりも悪い可能性があるからである。良好な機能を維持する短縮LDPCコードをどのように構成するかについては明らかではない。
デジタル・ビデオ衛星放送規格(DVB−S2)はLDPCコードを使用し、各所望コード・レートに関するH行列を規定する。DVB−S2は10個の異なるLDPCコード・レート、1/4,1/3,1/2,3/5,2/3,3/4,4/5,5/6,8/9,及び9/10を規定し、これらのコード・レートは全て、コード化ブロック長n=64800ビットを有する。各コード・レートに関して、異なるパリティ・チェック行列Hが指定される−短縮は規格においては使用されない。この技術分野では公知のように、不規則なLDPCコードによって、規則的なLDPCコードよりも良好な機能が実現する。LDPCコードに関して使用する場合の「規則的な(regular )」という用語は、行列Hの全ての行が同じ数の1を有し、かつ行列Hの全ての列が同じ数の1を有し、この場合、行または列の1の数は、行または列の「重み」とも呼ばれる。これ以外の場合は、LDPCコードは不規則であると見なされる。狭い意味では、「規則的な」という用語は、行及び列のいずれかに適用することもできるし(すなわち、ある行列では、列重みは規則的であるが、行重みは不規則である)、行列の部分行列に対して適用することもできる(例えば、ある行列のある部分行列は、当該部分行列の全ての列が同じ列重みを有し、かつ当該部分行列の全ての行が同じ行重みを有する場合に規則的である)。不規則なコードは良好な機能を実現するために望ましいので、DVB−S2は複数のH行列を規定し、これらの行列の各々は所望の重み分布を有して、当該コード・レートにおける良好な機能を実現する。全てのDVB−S2コード・レートに関する各重みの列の数を表1に示す。
Figure 0004558037
802.16に対して提案されたインテルのLDPCコードのような幾つかのコード構成は、H行列を一つだけ有し、かつ短縮を使用して他のコード・レートを得るが、短縮後のコードは有効に機能しない。情報ビットに対応する行列Hの部分(Hで示される)は規則的であり(従って行列全体が準規則的であると呼ばれることがある)、短縮後は、コード重み分布は良好な構成と比較すると悪い。良好なLDPC構成は規則的な列重みをHの中に持たない傾向がある。
本発明は、非短縮化または短縮化を良好に実現する不規則なH行列を構成する方法を提案する。その行列及びその短縮バージョンを使用してエンコード及びデコードを行なうことができる。
k個の情報ビットを取り入れ、かつn個のコード・ビットを生成するコードの場合、H行列を2つの部分H=[H]に分割し、Hはm行k列のサイズを有し、Hはm行m列のサイズを有し、m=n−kである。Hは非短縮情報ビットに対応し、そしてHはパリティ・ビットに対応するので、[(Hm×k (Hm×m][(s)l×k (p)l×m=0が成り立つ。sの最初のL個の位置を短縮する場合、Hの最初のL列を基本的に除去する。
は、特定の列重み構造が定義されるという点で決定論的である。Hは、当該行列を規則的とするか、あるいは不規則にすることができ、行列がどのような構造を有することもできるか、あるいは行列をランダムに構成することができるという点で非決定論的である。好適なHは、インテル802.16 LDPC提案における「データをエンコードし、デコードする方法及び装置(Method And Apparatus For Encoding And Decoding Data )」と題された米国特許出願第10/839995号明細書に記載されるものと同様とすることができる(近似的な下三角(lower triangular)行列であり、重み1を有する最後の列を除く全ての列が重み2を有し、列の1は相互に積み重なり、上側の1は対角線に位置する。数学的には、i=jの場合及びi=j+1の場合(0<=i<=m−1,0<=j<=m−1)、m行m列のH行列は、行i列jの要素が1であるものとして表わされる)。
行列の一例は次式のように表わされる。
Figure 0004558037
上式において、hは2よりも大きい奇数の重みであり、かつh=[1000100010...0]とすることができる。
行列の別の例示としての実現は次式のように表わされる。
Figure 0004558037
規則的なコードよりも良好な機能を持つ不規則なコードに関して、種々の重みの列は機能に影響を与えることなく、どのような順番にでも配置することができる。何故なら、コード・ビットの順番の入れ替えは、エラー訂正機能に影響しないからである。従って、列重みは通常、特定の順番になるように分布されることはない。例えば、同じ重みの全ての列をまとめてグループにすることができる。Hの先頭のL列を短縮によって効果的に除去する場合、残りの重みによって機能が低下し得る。
この問題を解決するために、決定論的セクションHは複数の部分行列を含み、各部分行列は、これらの部分行列の間でほぼ交互に繰り返される列重みを有する。これらの部分行列の間での交互の繰り返しは、これらの部分行列に関する所望の列重み分布に基づく。これらの部分行列の間での列重みの交互の繰り返しは、所望の列重み分布が全ての部分行列に関して同じである場合に、均一となる。これらの部分行列の間での列重みの交互の繰り返しは、所望の列重み分布が2つの部分行列に関して異なる場合に、不均一となる。一つの部分行列の内部では、異なる重みの列が交互に繰り返されて、異なる重みの列が当該部分行列全体に渡ってほぼ均一に分布するようになる。
本発明では、異なる重みの列を複数の部分行列の間で均一に、あるいは不均一に交互に繰り返し配置して、結果として得られる短縮行列(shortened matrix)が遥かに良好な重み分布、従って良好なエラー訂正機能を有することができるようにする。Hを、Hが2つ以上の異なる列重み(例えば、Hの各列に3及び10の列重み)を有するという点で不規則であるとする。Hの列を更に2つのセクション(部分行列)H1a及びH1bに分割し、H1aをm行L列の行列(すなわち、Hの最初のL列)とし、H1bをm行(k−L)列の行列(Hの残りの(k−L)列)とする。異なる重みの列をH1aとH1bとの間で交互に配置して、Lビットだけ短縮した後に(すなわち、H1aをHから効果的に除去する)、結果として得られる[H1b ]の構造のコードが良好な重み分布を有するようにする。
エンコードを行なう場合、エンコーダはまずL個のゼロが先頭になるように、L個のゼロを長さ(k−L)の現在のシンボル集合にプリペンド(追加)する。次に、sが長さ(k−L)を有する場合のゼロ詰め情報ベクトルs=[0]を、Hが短縮されずにパリティ・ビット・ベクトルp(長さm)を生成するものとした場合のHを使用してエンコードする。プリペンドされたゼロを現在のシンボル集合から除去した後、コード・ビット・ベクトルx=[sp]をチャネルを通して送信する。このエンコード手順は、情報ベクトルsを短縮行列[H1b ]を使用してエンコードしてパリティ・チェック・ビットを求める操作と等価である。
簡単な例をHの2つの領域に関して記載したが、Hを更に細かく分割して複数の列が小さい領域に渡って交互に繰り返し配置されるようにすることができる。列重みの交互の繰り返しは、短縮後に、結果として得られるパリティ・チェック行列が全て良好な重み分布を有するように行なわれる。
複数の部分行列の間の交互の繰り返しは、重みが均一に、あるいは不均一になるように行なうことができる。重みが均一になるような交互の繰り返しを行なうと所望の重み分布が得られ、この重み分布はHの各領域に関してHの適切な列重み比を維持する。例えば、Hが近似的に、重みx1の列を25%、及び重みx2の列を75%の割合で有する場合、H1a及びH1bはそれぞれ近似的に、25%の割合の重みx1の列、及び75%の割合の重みx2の列を、1個の重みx1の列、及び3個の重みx2の列をHの全体に渡って交互に繰り返し配置することにより有することができる。別の構成として、これらの列は近似的に、概数(round )(0.25幅(H1a))個の重みx1の列の後に、概数(0.75幅(H1a))個の重みx2の列が続くように列をH1aにおいて配置することにより配置することができる。両方の場合において、H1bはH1aと同じ列重み分布を有することになり、H1bの列の配置は、コードを更に短縮する(すなわち、H1bを更に別の領域に分割する)ことがない限り、機能に影響しない。均一に交互に繰り返すことによって基本的に、ほぼ適切な重み分布が短縮コードに関して得られる。
不均一な交互の繰り返しでは、Hの各領域に関する所望の重み分布との一致を達成しようとする。例えば、Hが、重みx1が25%、かつ重みx2が75%という重み分布を有するが、H1bを用いた50%短縮コードが、重みx1が50%、かつ重みx2が50%という所望の重み分布を有する場合、H1bは、H1aとH1bとの間で列を不均一に交互に繰り返すことによって所望の分布を達成することができる。この場合近似的に、概数(0.25幅(H)−0.5幅(H1b))個の重みx1の列、及び概数(0.75幅(H)−0.5幅(H1b))個の重みx2の列がH1aに配置され、H1bは、0.5幅(H1b)個の列が重みx1であり、かつ0.5幅(H1b)個の列が重みx2であるという所望の重み分布を有する。交互の繰り返しによる不均一分布は、1個の重みx2の列と、ゼロ個の重みx1の列とを、H1aにおいてほぼ交互に繰り返すことにより(すなわち、H1aの全てが重みx2の列である)、かつ(必要に応じて)1個の重みx2の列と、1個の重みx1の列とをH1bにおいてほぼ交互に繰り返すことにより得られる。複数の短縮コード・レートをサポートする必要がある場合、部分行列全体に散らばった種々の重みの列との不均一な交互の繰り返しが、良好な機能を全ての短縮コード・レートに関して実現するために望ましい。
アルゴリズム擬似コード
次のMatlabを取り入れて、どのようにして良好な列重み分布を所定のコード・レート及びコード・サイズに関して所望の重み分布を使用して見付け出すことができるかについて例示する。
Figure 0004558037
次のMatlabコードは、交互の繰り返しを部分行列の内部でどのように行なうかについて例示している。ここで、sは列重みを有するベクトルであり、z1及びz2は部分行列内部の特定の列重み分布に依存することに留意されたい。
Figure 0004558037

例を使用して上に記載した提案を例示する。レートが4/5であり、サイズが(2000,1600)のコードの場合、H行列は2,3,及び10の列重みを有することが分かる。交互の繰り返しを行なわないパリティ・チェック行列Hnonの列重み分布を図1にプロットする。H部分の列の交互の繰り返しを行なった後、結果として得られるパリティ・チェック行列Hinterの列重み分布を図2にプロットし、付録Aに列挙する。行列Hinterは、行列Hinterに列置換を施していることを除いて、行列Hnonと同一である。
行列Hinterを短縮した後、結果として得られる行列は、良好な列重み分布を依然として維持する。一例として、レートが2/3のコードの所定の目標重み分布は次式のように表わされる。
Figure 0004558037
上式において、第1列は所望の列重みを示し、第3列は所定の重みを有する列の数を示し、不均一挿入アルゴリズム(non-uniform insertion algorithm )によって、レートが2/3の生成コードの列重み分布が表2に示すように得られる。同様の手順を使用して、レートが1/2のコードの所望の列重み分布を表2のように見付け出す(レートが4/5の元のコードを短縮した後に)。Hnon及びHu_inter(均一な交互の繰り返しを行なった)に関する重み分布を表3及び4にそれぞれ示す。ここで、全ての場合においてHは399個の重みが2の列、及び1個の重みが3の列を有し、Hは1個の重みが2の列を有することに注目されたい。
Figure 0004558037
Figure 0004558037
Figure 0004558037
シミュレーション解析を行なった結果、不均一に交互に繰り返すことによって、短縮を行なうかどうかに拘らず、良好な機能を持つLDPCコードが得られることが分かる。レートが4/5の非短縮コードの機能を、802.16提案コード構成と比較する形で図3に示す。短縮を行なわない場合、不規則なコード構成は列重みを交互に繰り返す、繰り返さないに拘らず同じ機能を有することに注目されたい。シミュレーションによって、Hnon及びHinterはFER=10−2において、802.16提案規格(インテル)よりも0.2dBだけ良好に機能することが分かる。
コードをL=800の情報位置だけ短縮する場合、Hnon(またはHinter)の先頭の800列を基本的に除去して、レートが2/3のコードを得る。短縮コードの機能を、同様の短縮を行なった802.16提案規格と比較する形で図4に示す。シミュレーションによって、短縮を行なわない場合には、短縮後のコード機能が802.16提案規格(インテル)よりも、短縮後の重み分布が悪くなることによって低下することが分かる。しかしながら、交互の繰り返しを行った後は、コード機能はFER=10−2において802.16提案規格よりも0.25dBだけ良くなる。
同様にして、コードを更に短縮することができる。元のコードをL=1200の情報位置だけ短縮する場合、Hnon(またはHinter)の先頭の1200列を基本的に除去して、レートが1/2のコードを得る。短縮コードの機能を、同様の短縮を行なった802.16提案規格と比較する形で図5に示す。シミュレーションによって、短縮を行なわない場合には、短縮後のコード機能が802.16提案規格よりも、短縮後の重み分布が悪くなることによってわずかに低下することが分かる。しかしながら、交互の繰り返しを行った後は、コード機能はFER=10−2において802.16提案規格よりも0.35dBだけ良くなる。
図1は、交互の繰り返しを行なわない列重みを有するパリティ・チェック行列のHにおける列重み分布を示す、すなわち同じ重みの列がグループ化される。コード・サイズは(2000,1600)である。
図2は、交互の繰り返しを行なった列重みを有するパリティ・チェック行列のHにおける列重み分布を示す。コード・サイズは(2000,1600)である。
図3は、サイズが(2000,1600)の非短縮コードのFER特性を示している。2つの非短縮コードは、(a)802.16提案規格(インテル)、(b)不規則なコード構成である。ここで、短縮を行なわない場合には、不規則なコード構成は列重みの交互の繰り返しを行なうかどうかに拘らず同じ特性を有することに注目されたい。
図4は、サイズが(2000,1600)のコードを800ビットだけ短縮した、サイズが(1200,800)のコードのFER特性を示している。3つの非短縮コードは、(a)802.16提案規格(インテル)、(b)列重みの交互の繰り返しを行なわない場合の不規則なコード構成、(c)列重みの交互の繰り返しを行なった場合の不規則なコード構成である。
図5は、サイズが(2000,1600)のコードを1200ビットだけ短縮した、サイズが(800,400)のコードのFER特性を示している。3つの非短縮コードは、(a)802.16提案規格(インテル)、(b)列重みの交互の繰り返しを行なわない場合の不規則なコード構成、(c)列重みの交互の繰り返しを行なった場合の不規則なコード構成である。
付録:交互の繰り返しを行なった列重み分布
以下に提示するのは、Hセクションに対して交互の繰り返しを行なった後の、サイズが(2000,1600)の不規則なH行列の列重み分布である。各列の列重みを第1列から始まる形で示す。
Figure 0004558037
交互の繰り返しの列重みをHの中に持たないパリティ・チェック行列の列重み分布を示す図、すなわち同じ重みの列がグループ化され、コード・サイズが(2000,1600)である場合の図。 交互の繰り返しの列重みをHの中に有するパリティ・チェック行列の列重み分布を示す図、コード・サイズは(2000,1600)である場合の図。 サイズが(2000,1600)の非短縮コードのFER特性を示す図。 サイズが(2000,1600)のコードを800ビットだけ短縮した、サイズが(1200,800)のコードのFER特性を示す図。 サイズが(2000,1600)のコードを1200ビットだけ短縮した、サイズが(800,400)のコードのFER特性を示す図。

Claims (11)

  1. パリティ・チェック・ビット(p,...,pm−1)を現在のシンボル集合s=(s,...,sk−1)に基づいて生成し、前記パリティ・チェック・ビットを有するコード・ビット・ベクトル(s,...,sk−1,p,...,pm−1)を送信する方法であって、
    前記現在のシンボル集合s=(s,...,sk−1)を取得するステップであって、ここでkは、短縮化を行わない場合の前記現在のシンボル集合全体の長さである、前記現在のシンボル集合を取得するステップと、
    所与の行列Hを使用して前記パリティ・チェック・ビットを求めて前記コード・ビット・ベクトルを生成するステップであって、前記HがセクションH及びセクションHを含み、かつ前記Hが複数の異なる列重みを有し、更に前記Hは、複数のサブ・セクションを含み、前記複数のサブ・セクションの各々の列重みの分布は、前記Hの列重みの分布と実質的に同じであり、前記H はパリティ・ビットに対応するm行m列行列であり、前記パリティ・チェック・ビットを求めて前記コード・ビット・ベクトルを生成するステップと、
    前記コード・ビット・ベクトルを送信するステップと、
    を備える方法。
  2. 請求項1に記載の方法において、前記Hは次式、
    Figure 0004558037
    が成り立ち、h,...,hm−1は0又は1であり、3つ以上且つ奇数個のh,...,hm−1が1である、方法。
  3. 請求項1に記載の方法において、前記Hは、次式、
    Figure 0004558037
    が成り立つ、方法。
  4. 請求項1に記載の方法において、前記少なくとも一つの列重みの所望の列重み分布が前記複数のサブ・セクションの各々に関して同じである場合に、前記少なくとも一つの列重みは、前記複数のサブ・セクションの間で均一に交互に繰り返される、方法。
  5. 請求項1に記載の方法において、前記少なくとも一つの列重みの所望の列重み分布が前記複数のサブ・セクションに関して異なる場合に、前記少なくとも一つの列重みは、前記複数のサブ・セクションの間で不均一に交互に繰り返される、方法。
  6. 請求項1に記載の方法において、サブ・セクションの内部において、異なる重みの列が交互に繰り返し配置されることにより、前記異なる重みの列が前記サブ・セクション全体に渡ってほとんど均一に分散される、方法。
  7. 請求項1に記載の方法において、Hはサブ・セクションH1a及びH1bを含み、H1aはHの最初のL列を含み、H1bはHの残りの(k−L)列を含み、Lは、前記現在のシンボル集合が短縮化されるビット数であり、0<=L<=k−1である、方法。
  8. 請求項7に記載の方法であって、更に、サブ・セクションH1a及び/又はH1bを更に分割して複数の更に小さいサブ・セクションとするステップを備え、所定の重みの列がこれらの更に小さいサブ・セクションに渡って交互に繰り返し配置される、方法。
  9. 現在のシンボル集合s=(s,...,sk−1)を推定するデコーダを動作させる方法であって、
    信号ベクトルy=(y,...,yn−1(n>k)を受信するステップと、
    所与の行列Hを使用して前記現在のシンボル集合(s,...,sk−1)を推定するステップと、
    を備え、前記HがセクションH及びセクションHを含み、かつ前記Hは複数の異なる列重みを有し、前記Hは複数のサブ・セクションを含み、前記複数のサブ・セクションの各々の列重みの分布は、前記Hの列重みの分布と実質的に同じであり、前記H はパリティ・ビットに対応するn−k行n−k列行列である、方法。
  10. パリティ・チェック・ビット(p,...,pm−1)を現在のシンボル集合s=(s,...,sk−1)に基づいて生成し、パリティ・チェック・ビットを有し、且つ短縮化されたコード・ビット・ベクトル(s,...,sk−1,p,...,pm−1)を送信する方法であって、
    前記現在のシンボル集合s=(s,...,sk−1)を取得するステップであって、ここでkは、短縮化を行わない場合の前記現在のシンボル集合全体の長さである、前記現在のシンボル集合を取得するステップと、
    所与の行列Hに対して短縮化行列を求めるステップであって、前記HはセクションH及びセクションHを含み、前記Hは複数の異なる列重みを有し、前記Hは更にサブ・セクションH1a,H1bを含み、前記H1a及びH2bの重み分布は、前記Hの重み分布と実質的に同じであり、前記H はパリティ・ビットに対応するm行m列行列である前記Hに対して、前記短縮化行列を[H1b,H]として求めるステップと、
    前記Hの短縮化行列[H1b,H]に対応する前記シンボル集合の部分集合と前記Hの短縮化行列[H1b,H]とを使用して、前記パリティ・チェック・ビットを求めて前記短縮化されたコード・ビット・ベクトルを生成するステップと、
    前記前記短縮化されたコード・ビット・ベクトルを前記送信するステップと、
    を備える方法。
  11. 短縮化されたシンボル集合s=(s,...,sk−1)を推定するデコーダを動作させる方法であって、
    信号ベクトルy=(y,...,yn−1(n>k)を受信するステップと、
    所与の行列Hを短縮化した行列を使用して前記現在のシンボル集合(s,...,sk−1)を推定するステップと、
    を備え、前記HがセクションH及びセクションHを含み、かつHが複数の異なる列重みを有し、前記Hがサブ・セクションH1a及びH1bを含み、前記H1a及びH2bの列重み分布は、前記Hの列重み分布と実質的に同じであり、前記短縮化した行列は、[H1b,H]により表され、前記H はパリティ・ビットに対応するn−k行n−k列行列である、方法。
JP2007502126A 2004-05-14 2005-05-11 良好な機能を持つ不規則な短縮ldpcコードのコード構成 Active JP4558037B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US57128004P 2004-05-14 2004-05-14
US10/874,611 US7165205B2 (en) 2004-05-14 2004-06-23 Method and apparatus for encoding and decoding data
PCT/US2005/016410 WO2005114418A2 (en) 2004-05-14 2005-05-11 Code construction for irregular shortened ldpc codes with good performance

Publications (2)

Publication Number Publication Date
JP2007525931A JP2007525931A (ja) 2007-09-06
JP4558037B2 true JP4558037B2 (ja) 2010-10-06

Family

ID=35310751

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007502126A Active JP4558037B2 (ja) 2004-05-14 2005-05-11 良好な機能を持つ不規則な短縮ldpcコードのコード構成

Country Status (11)

Country Link
US (1) US7165205B2 (ja)
EP (4) EP2405582A1 (ja)
JP (1) JP4558037B2 (ja)
KR (1) KR100861893B1 (ja)
CN (2) CN102647193B (ja)
CA (1) CA2564395C (ja)
ES (1) ES2400950T3 (ja)
IL (1) IL177439A (ja)
PL (1) PL1747613T3 (ja)
TW (1) TWI348831B (ja)
WO (1) WO2005114418A2 (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7577207B2 (en) * 2002-07-03 2009-08-18 Dtvg Licensing, Inc. Bit labeling for amplitude phase shift constellation used with low density parity check (LDPC) codes
US7020829B2 (en) * 2002-07-03 2006-03-28 Hughes Electronics Corporation Method and system for decoding low density parity check (LDPC) codes
WO2004006443A1 (en) * 2002-07-03 2004-01-15 Hughes Electronics Corporation Bit-interleaved coded modulation using low density parity check (ldpc) codes
US20040019845A1 (en) * 2002-07-26 2004-01-29 Hughes Electronics Method and system for generating low density parity check codes
US7864869B2 (en) 2002-07-26 2011-01-04 Dtvg Licensing, Inc. Satellite communication system utilizing low density parity check codes
GB2454193B (en) * 2007-10-30 2012-07-18 Sony Corp Data processing apparatus and method
JP4672015B2 (ja) * 2004-07-27 2011-04-20 エルジー エレクトロニクス インコーポレイティド 低密度パリティ検査コードを用いた符号化及び復号化方法
KR101208546B1 (ko) 2004-08-09 2012-12-05 엘지전자 주식회사 저밀도 패리티 체크 행렬을 이용한 부호화 및 복호화 방법
US7698623B2 (en) 2004-08-13 2010-04-13 David Hedberg Systems and methods for decreasing latency in a digital transmission system
CN101341659B (zh) * 2004-08-13 2012-12-12 Dtvg许可公司 用于多输入多输出通道的低密度奇偶校验码的码设计与实现的改进
US20060218459A1 (en) * 2004-08-13 2006-09-28 David Hedberg Coding systems and methods
WO2006055086A1 (en) * 2004-10-01 2006-05-26 Thomson Licensing A low density parity check (ldpc) decoder
EP1677450A3 (en) * 2004-12-31 2008-09-24 Samsung Electronics Co., Ltd. HARQ apparatus and method using an LDPC code
US7668248B2 (en) * 2005-10-19 2010-02-23 Texas Instruments Incorporated High-performance LDPC coding for digital communications in a multiple-input, multiple-output environment
US7707479B2 (en) 2005-12-13 2010-04-27 Samsung Electronics Co., Ltd. Method of generating structured irregular low density parity checkcodes for wireless systems
KR20070063851A (ko) * 2005-12-15 2007-06-20 삼성전자주식회사 패리티 검사 행렬, 패리티 검사 행렬 생성 방법, 인코딩방법 및 에러 정정 장치
JP4558638B2 (ja) * 2005-12-15 2010-10-06 富士通株式会社 符号器および復号器
US7493548B2 (en) * 2006-02-06 2009-02-17 Motorola, Inc Method and apparatus for encoding and decoding data
CN101162907B (zh) * 2006-10-10 2010-11-03 华为技术有限公司 一种利用低密度奇偶校验码实现编码的方法及装置
DK2056464T3 (da) 2007-10-30 2013-02-18 Sony Corp Databehandlingsanordning og -fremgangsmåde
TWI410055B (zh) * 2007-11-26 2013-09-21 Sony Corp Data processing device, data processing method and program product for performing data processing method on computer
TWI459724B (zh) * 2007-11-26 2014-11-01 Sony Corp Data processing device and data processing method
TW200937872A (en) * 2007-11-26 2009-09-01 Sony Corp Data processing device and data processing method
TWI390856B (zh) * 2007-11-26 2013-03-21 Sony Corp Data processing device and data processing method
TW200947881A (en) * 2007-11-26 2009-11-16 Sony Corp Data processing device and data processing method
TW200947880A (en) * 2007-11-26 2009-11-16 Sony Corp Data process device and data process method
TWI497920B (zh) * 2007-11-26 2015-08-21 Sony Corp Data processing device and data processing method
TWI427937B (zh) * 2007-11-26 2014-02-21 Sony Corp Data processing device and data processing method
KR101503059B1 (ko) * 2008-02-26 2015-03-19 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널 부호/복호 방법 및 장치
TWI372523B (en) * 2008-11-14 2012-09-11 Realtek Semiconductor Corp Recording controller and decoder for parity-check code
KR101670511B1 (ko) * 2010-05-07 2016-10-28 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널 부호/복호 방법 및 장치
CN102394659B (zh) * 2011-08-04 2013-06-05 中国科学院上海微系统与信息技术研究所 Ldpc码校验矩阵构造方法及对应矩阵乘法运算装置
JP6431536B2 (ja) 2013-10-21 2018-11-28 マーベル インターナショナル リミテッド 最終レベルキャッシュシステム及び対応する方法
US11822474B2 (en) 2013-10-21 2023-11-21 Flc Global, Ltd Storage system and method for accessing same
US10097204B1 (en) * 2014-04-21 2018-10-09 Marvell International Ltd. Low-density parity-check codes for WiFi networks
CN104811266B (zh) * 2014-01-29 2018-01-23 上海数字电视国家工程研究中心有限公司 比特交织、解交织方法及对应的发射机、接收机
US9264074B2 (en) * 2014-02-11 2016-02-16 Entropic Communications, Llc LDPC code matrices
CN106463145B (zh) 2014-05-02 2019-08-30 马维尔国际贸易有限公司 用于硬盘驱动器和混合驱动器的高速缓存系统和方法
US10382064B2 (en) 2015-10-13 2019-08-13 SK Hynix Inc. Efficient LDPC encoder for irregular code
WO2019246139A1 (en) 2018-06-18 2019-12-26 Flc Technology Group Inc. Method and apparatus for using a storage system as main memory
US11481471B2 (en) * 2019-08-16 2022-10-25 Meta Platforms, Inc. Mapping convolution to a matrix processor unit

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3697949A (en) * 1970-12-31 1972-10-10 Ibm Error correction system for use with a rotational single-error correction, double-error detection hamming code
US3697942A (en) * 1971-08-19 1972-10-10 Loren P Hocking Early warning brake fault device and system
US6141788A (en) * 1998-03-13 2000-10-31 Lucent Technologies Inc. Method and apparatus for forward error correction in packet networks
JP3833545B2 (ja) * 2002-02-13 2006-10-11 三菱電機株式会社 通信システム、受信機、送信機および通信方法
EP1480346A4 (en) * 2002-02-28 2006-05-10 Mitsubishi Electric Corp METHOD FOR GENERATING LDPC CODE INSPECTION ARRAYS AND DEVICE FOR GENERATING INSPECTION ARRAYS
JP4546246B2 (ja) * 2002-10-05 2010-09-15 デジタル ファウンテン, インコーポレイテッド 連鎖的暗号化反応の系統的記号化および復号化
CN1185796C (zh) * 2002-11-15 2005-01-19 清华大学 改进的非规则低密度奇偶校验码纠错译码方法
US7702986B2 (en) * 2002-11-18 2010-04-20 Qualcomm Incorporated Rate-compatible LDPC codes
KR100936022B1 (ko) * 2002-12-21 2010-01-11 삼성전자주식회사 에러 정정을 위한 부가정보 생성 방법 및 그 장치
KR100906474B1 (ko) * 2003-01-29 2009-07-08 삼성전자주식회사 저밀도 부가정보 발생용 매트릭스를 이용한 에러 정정방법 및그 장치
US6957375B2 (en) * 2003-02-26 2005-10-18 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 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 장치 및 방법
JP4224777B2 (ja) * 2003-05-13 2009-02-18 ソニー株式会社 復号方法および復号装置、並びにプログラム
US7376883B2 (en) * 2003-10-27 2008-05-20 The Directv Group, Inc. Method and system for providing long and short block length low density parity check (LDPC) codes
US7395495B2 (en) * 2004-01-12 2008-07-01 Intel Corporation Method and apparatus for decoding forward error correction codes
KR100659266B1 (ko) * 2004-04-22 2006-12-20 삼성전자주식회사 다양한 코드율을 지원하는 저밀도 패러티 검사 코드에 의한데이터 송수신 시스템, 장치 및 방법

Also Published As

Publication number Publication date
ES2400950T3 (es) 2013-04-15
CN102647193A (zh) 2012-08-22
CA2564395A1 (en) 2005-12-01
PL1747613T3 (pl) 2013-04-30
CN1934789B (zh) 2012-06-06
WO2005114418A3 (en) 2006-05-18
EP2365640A1 (en) 2011-09-14
EP2405581A1 (en) 2012-01-11
CN1934789A (zh) 2007-03-21
EP1747613A2 (en) 2007-01-31
EP1747613B1 (en) 2013-01-02
CA2564395C (en) 2009-07-07
EP2405582A1 (en) 2012-01-11
WO2005114418A2 (en) 2005-12-01
IL177439A (en) 2014-04-30
EP2405581B1 (en) 2018-07-11
US20050257119A1 (en) 2005-11-17
JP2007525931A (ja) 2007-09-06
EP1747613A4 (en) 2009-01-21
IL177439A0 (en) 2006-12-10
KR100861893B1 (ko) 2008-10-09
TW200611497A (en) 2006-04-01
CN102647193B (zh) 2014-12-17
US7165205B2 (en) 2007-01-16
TWI348831B (en) 2011-09-11
KR20070012825A (ko) 2007-01-29

Similar Documents

Publication Publication Date Title
JP4558037B2 (ja) 良好な機能を持つ不規則な短縮ldpcコードのコード構成
JP4672016B2 (ja) 低密度パリティ検査行列を用いた符号化及び復号化方法
KR101227264B1 (ko) Ldpc 코드용 디코더
JP4558638B2 (ja) 符号器および復号器
KR102229233B1 (ko) 구조화된 ldpc의 부호화 및 복호화 방법 및 장치
KR101740316B1 (ko) 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널 부호화/복호화 방법 및 장치
JP2008514106A (ja) Ldpcコードを用いた符号化及び復号化方法
WO2011109084A1 (en) Quasi-cyclic ldpc encoding and decoding for non-integer multiples of circulant size
JP4832447B2 (ja) チャネルコードを用いた復号化装置及び方法
JP2020526117A (ja) 疑似サイクリック低密度パリティチェックの設計方法および装置
KR100918741B1 (ko) 이동 통신 시스템에서 채널 부호화 장치 및 방법
CN107733440B (zh) 多边类型结构化ldpc处理方法及装置
US11316534B2 (en) Encoding method and device, decoding method and device, and storage medium
KR20110126097A (ko) Ldpc 의사-주기적인 코드들을 이용한 코딩 및 디코딩
JP5696068B2 (ja) 符号化装置及び通信装置
CN113055024B (zh) 用于5g-nr系统短块长低码率ldpc码的修正译码方法
Laendner et al. Characterization of small trapping sets in LDPC codes from Steiner triple systems
US7181677B1 (en) System and method for producing data and ECC code words using a high rate restricted-symbol code
CN106130565B (zh) 一种由rc-ldpc分组码获得rc-ldpc卷积码的方法
CN109644005B (zh) 低密度奇偶校验码基矩阵生成方法及装置
KR100800775B1 (ko) 이동 통신 시스템에서 채널 부호화 장치 및 방법
Sukobok et al. Nortel Networks 20410 Century Blvd Gaithersburg, MD 20874 USA

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091214

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100713

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100720

R150 Certificate of patent or registration of utility model

Ref document number: 4558037

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250