JP5116735B2 - 符号を構成する方法 - Google Patents

符号を構成する方法 Download PDF

Info

Publication number
JP5116735B2
JP5116735B2 JP2009189095A JP2009189095A JP5116735B2 JP 5116735 B2 JP5116735 B2 JP 5116735B2 JP 2009189095 A JP2009189095 A JP 2009189095A JP 2009189095 A JP2009189095 A JP 2009189095A JP 5116735 B2 JP5116735 B2 JP 5116735B2
Authority
JP
Japan
Prior art keywords
matrix
code
cost
parity check
base 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.)
Expired - Fee Related
Application number
JP2009189095A
Other languages
English (en)
Other versions
JP2010057177A (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.)
Mitsubishi Electric Research Laboratories Inc
Original Assignee
Mitsubishi Electric Research Laboratories 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
Application filed by Mitsubishi Electric Research Laboratories Inc filed Critical Mitsubishi Electric Research Laboratories Inc
Publication of JP2010057177A publication Critical patent/JP2010057177A/ja
Application granted granted Critical
Publication of JP5116735B2 publication Critical patent/JP5116735B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/033Theoretical methods to calculate these checking codes

Landscapes

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

Description

本発明は、包括的には、エラー訂正符号に関し、より具体的には、大きなガース(girth)の準巡回低密度パリティ検査(quasi-cyclic low-density parity-check:QC−LDPC)符号を構成することに関する。
エラー訂正符号
データの記憶及び通信の分野における基本的な問題は、効率的なエラー訂正符号を構成することである。別段の指定がない限り、以下の説明において「符号」と記載する場合には、いずれもエラー訂正符号を示すものと解されるべきである。
1つの非常に重要なエラー訂正符号は、線形ブロックエラー訂正符号である。
この符号は、N個のシンボルのブロックを使用して、k個の情報シンボルのブロックを符号化する。ここで、N>kである。N−k個の追加シンボルは、破損した信号が雑音を有する通信チャネルにより受信されるとき、又は障害のある記憶媒体からの復旧時に、それらの破損した信号を訂正するのに使用される。パラメータkは、符号の「次元」と呼ばれる。
符号のすべての制約条件を満たすN個のシンボルのブロックは、「符号語」と呼ばれ、k個の情報シンボルの対応するブロックは、「情報ブロック」と呼ばれる。
線形符号は、パリティ検査行列によって表すことができる。バイナリ[N,k]符号を表すパリティ検査行列は、M行及びN列を有する0及び1からなる行列である。パリティ検査行列のN列は、符号のN個のシンボルに対応する。この行列の線形独立行の個数は、N−kである。
LDPC符号
近年、反復方法を使用して復号することができる符号に多大な関心が寄せられている。1つの特に重要な反復復号可能な符号は、1963年にGallagerによって最初に説明された低密度パリティ検査(LDPC)符号である。これについては、非特許文献1及び2003年10月14日にRichardson他に付与された「Methods and apparatus for decoding LDPC codes」と題する特許文献1を参照されたい。
多くのLDPC符号は、ランダムな構成を使用する。たとえば、GallagerのオリジナルのバイナリLDPC符号は、パリティ検査行列の観点から定義される。このパリティ検査行列は、0及び1のみからなり、少数の1は、予め定義された確率分布に従って行列内でランダムに配置される。一般に、反復復号器は、比較的少数の非ゼロのエントリーを有するパリティ検査行列がランダムな構成を有しようと、又は規則的な構成を有しようと、そのパリティ検査行列を有する符号に対して効果がある。
LDPC符号は、「タナーグラフ」を使用して表されることが多い。タナーグラフは、パリティ検査行列と等価である。タナーグラフでは、パリティ検査行列の列は、「ビットノード」として表される一方、パリティ検査行列の行は、「検査ノード」として表される。タナーグラフは、パリティ検査行列の対応する行及び列の位置に1がある場合に、ビットノードと検査ノードとの間の接続を含む2部グラフである。
QC−LDPC符号
ランダムな構成に基づくLDPC符号は、ハードウェア復号器を製作することに伴う配線の複雑度が非常に高くなるという不利な点を有する。この理由から、より規則的な「準巡回」LDPC(QC−LDPC)符号が開発された。QC−LDPC符号の一例は、非特許文献2、特許文献2、及び特許文献3に説明されている。
QC−LDPC符号の規則的な構造によって、効率的且つ高速な超大規模集積(VLSI)の実施態様が可能になる。この理由から、たとえば、IEEE802.16e標準規格、IEEE802.11n標準規格、及びDVB−S2標準規格といった多数の無線通信標準規格は、QC−LDPC符号を使用している。
一般に、QC−LDPC符号は、特殊な構造を有するパリティ検査行列Hの形である。このパリティ検査行列Hによって、符号は、ハードウェア実施に非常に好都合なものとなる。パリティ検査行列は、p×p正方部分行列から構成される。これらの部分行列は、すべて0からなるか、又は循環置換行列であるかのいずれかである。
循環置換行列は、各行に単一の1を有する行列であり、1が位置する列は、行ごとに1つずつシフトされる。下式(1)の行列は、p=6を有する循環置換行列の一例である。
Figure 0005116735
この行列は、行及び列が、位置0から開始してカウントされるとき、第0行の1は列2にあるので、「I(2)」と呼ばれる。置換行列I(0)は、単位行列である。I(t)のインデックスtの値がp以上である場合、行列はラップアラウンド(wrap around)し、その結果、p=6の場合に、I(2)=I(8)=I(14)等を有する。QC−LDPC符号を記述する際に一般に使用され、且つ、本明細書で使用される1つの特殊な表記は、p×pの全ゼロ行列がI(−1)と表されることである。
サイズp×pの部分行列を有する(J,L)QC−LDPC符号は、そのパリティ検査行列によって、下式(2)のように定義される。
Figure 0005116735
ここで、0≦j≦J−1であり、0≦l≦L−1であり、pj,lは、範囲−1≦pj,l≦p−1の整数である。サイズM×Nのパリティ検査行列の場合、N=pLであり、m=pJである。
特定のQC−LDPCパリティ検査行列は、下式(3)に示すような、対応するJ×L次元の基本行列Bから構成することができる。この基本行列のエントリーは、パリティ検査行列の対応するエントリーの値pj,lである。
Figure 0005116735
全ゼロの部分行列が使用されるとき、その結果のLDPC符号は、「不規則な」LDPC符号となる可能性がある。不規則なLDPC符号は、パリティ検査行列の異なる列又は行が、異なる個数の1を含む可能性がある符号である。
LDPC符号のガース
用途に応じて、LDPC符号は、「ウォータフォール」(符号しきい値付近のSNR)若しくは「エラーフロア」(高SNR)レジームのいずれか又は双方における性能を最適化するように設計される。低いエラーフロアは、データ記憶装置及び通信システム等の非常に厳しい信頼性要求を有する用途にとって特に重要である。
LDPC符号のエラーフロア問題のいくつかの理論的解析は、エラーイベントが「トラッピングセット」によって引き起こされることを示している。これについては、たとえば、非特許文献3を参照されたい。トラッピングセットは、符号のタナーグラフにおける短いサイクルのクラスタに起因する。短いサイクルを伴うトラッピングセットを取り除く1つの方法は、タナーグラフにおける短いサイクルのクラスタリングを注意深く設計することである。
より単純な手法は、より大きなガースを有する符号を使用する。符号の「ガース」は、符号グラフにおける最短サイクルの長さである。短いサイクルを取り除くことによって、多数のサイクルが取り除かれる。これは、エラーフロアを低くする(改善する)効果を有する。
LDPC符号のガースを最適化することに関しては、かなりの従来技術が存在する。ある符号は、漸進的エッジ増大(progressive-edge growth:PEG)方法を使用する。これについては、非特許文献4を参照されたい。
また、PEG方法をQC−LDPC符号に適用することに関する研究も行われてきた。これについては、非特許文献5を参照されたい。
高ガースQC−LDPC符号は、ランダムな「推測及び試験(guess-and-test)」方法を使用して構成することもできる。これについては、非特許文献6を参照されたい。
米国特許第6,633,856号明細書 米国特許公開第20060109821号明細書 米国特許公開第20050149845号明細書
T. Richardson及びR. Urbanke著「The Renaissance of Gallager's Low-Density Parity-Check Codes」(IEEE Communications Magazine, vol. 41, pp. 126-131, August 2003) R. M. Tanner、D. Sridhara、及びT. Fuja著「A Class of Group-Structured LDPC Codes」(Proc. International Symposium on Communication Theory and Applications, Ambleside, U.K., July 2001) T.J. Richardson著「Error Floors of LDPC Codes」(Proc. 41st Annual Allerton Conference on Communications, Control, and Computing 2003) X. Y. Hu、E. Eleftheriou、及びD. M. Arnold著「Regular and Irregular Progressive Edge-Growth Tanner Graphs」(IEEE Trans. Info. Theory, vol. 51, pp. 386-398, 2005) Z. Li、B. V. K. V. Kumar著「A Class of Good Quasi-cyclic low-density parity-check Codes Based on Progressive Edge Growth Graph」(Signals, Systems, and Computers, Conference Record of the 38th Asilomar Conference, vol. 2, pp. 1990-1994, 2004) M. P. C. Fossorier著「Quasi-cyclic low-density parity-check codes from circulant permutation matrices」(IEEE Trans. Inform. Theory, vol. 50, no. 8, pp. 1788-1793, Aug. 2004)
しかしながら、特定のブロック長及び次元の符号について達成することができるガースの観点から、それらの方法には改良の余地がある。したがって、高ガースQC−LDPC符号を構成するための改良された方法が望まれている。
本発明の実施の形態は、高ガース準巡回低密度パリティ検査(QC−LDPC)符号を構成する方法を提供する。この方法は、ヒルクライミング最適化手順を使用する。ヒルクライミング手順は、符号のパラメータを貪欲に調整して、指定された符号及びガースのパラメータを満たす短い長さの符号を見つける。
ガースが与えられると、この方法は、従来技術のPEG方法又は「推測及び試験」方法と比較して、より少ない時間で、より短いブロック長のQC−LDPC符号を構成することができる。この時間差は、大きな基本行列を有するQC−LDPC符号では、著しい。
本発明の実施形態によるQC−LDPC符号を使用して情報を符号化及び復号する方法のフロー図である。 本発明の実施形態による基本行列及び可能な置換行列のフロー図である。 本発明の実施形態による高ガースを有する準巡回低密度パリティ検査符号を構成する方法のフロー図である。 本発明のヒルクライミング最適化手順によって構成されたQC−LDPC符号を従来技術の推測及び試験方法と比較するグラフである。 本発明のヒルクライミング最適化手順によって構成されたQC−LDPC符号を従来技術の推測及び試験方法と比較するグラフである。 本発明のヒルクライミング最適化手順によって構成されたQC−LDPC符号を従来技術の推測及び試験方法と比較するグラフである。
図1に示すように、本発明の実施の形態は、高ガースを有する準巡回低密度パリティ検査(QC−LDPC)符号150を構成する(100)方法を提供する。このような符号は、次に、ソース110によって生成されたk個のシンボルの情報ブロックu[a]101を符号化する(120)のに使用することができる。符号化された情報は、N個のシンボルを含む符号語x[n]102として、雑音を有するチャネル130を通じて送信される。このチャネルは、通信チャネルとすることができる。また、「チャネル」は、記憶媒体とすることもできる。この場合、符号語は、後のリトリーブに備えて媒体に書き込まれる。
チャネルは、符号語を破損して信号y[n]103にする可能性がある。この信号は、次に、復号器140に渡される。復号器140は、QC−LDPC符号150を使用して情報ブロックu[a]101を再構成したものz[a]104の出力を試みる。
QC−LDPC符号のサイクルの検出
図2は、所与の基本行列B 210のタナーグラフにおけるサイクルを示している。本発明を理解するには、タナーグラフにおけるサイクルをどのようにして特定することができるのかを理解することが役立つ。9×6基本行列B 210並びに4つのパラメータp、p、p、及びpが示されている。2つの可能な対応するパリティ検査行列H 211及びH 212も示されている。各パリティ検査行列は、基本行列の関連パラメータp、p、p、及びpの4つの3×3循環置換部分行列220を有する。これらの4つの行列のパラメータのこれらの2つの可能な選択肢は、
行列211におけるp=0、p=1、p=2、及びp=1、並びに
行列212におけるp=0、p=p=p=1
である。
第1の部分グラフは、破線231で示すように、長さ4のサイクルになる一方、後者の部分グラフは、長さ12のサイクル232になる。
次に、シフトの選択と符号のタナーグラフにおける結果のサイクルの長さとの間の対応を説明する。パリティ検査行列の各行は、タナーグラフの検査ノードに対応し、各列は、タナーグラフのビットノードに対応する。サイクルは、検査ノードとビットノードとが交互になったノードを通じるパスに対応する。
図2に示すように、ノードを通じるパスは、直線的な移動として視覚化することができる。行に沿った横の移動は、そのパスの一部をなす同じパリティ検査に接続された2つのエッジを選択することに対応する。列に沿った縦の移動は、そのパスの次のステップをなす同じビットノードに接続された第2のエッジを選択することに対応する。
1つのサイクルについて、パスは、そのパスが開始したビットノードと同じビットノードで終了する。パスを基本行列のレベルで見るとき、パスがサイクルを形成することは必要ではあるが、十分ではない。換言すれば、パスは、基本行列において−1により表されるどの全ゼロ部分行列も通過しないことが必要とされる。潜在的なパスがこの条件を満たすものと仮定する。しかしながら、各循環置換部分行列は、p個のパリティノード及びp個の変数ノードに対応するので、これは十分ではない。
パスは、同じ循環置換部分行列の異なるビットノードで終了する可能性があり、したがって、サイクルを完成しない可能性がある。十分であるものは、パスが戻るときに、そのパスが開始した循環部分行列の列と同じ列に戻る場合である。たとえば、サブグラフ211では、これは、長さ4のサイクルについて起こる。一方、サブグラフ212の循環シフトのわずかに異なる選択によって、これは、長さ12のサイクルの後にのみ起こる。
次に、結果としてサイクルを生じるパラメータpj,lに関する条件を指定することができる。所与のパスに沿った近傍の置換行列のpj,l間の差分が求められる。ここで、近傍のものは、同じ行にある。図2では、これらは、p−p及びp−pである。代替的に、列に沿った差分の点からこれを記述することもできる。各差分は、パスが通過する置換行列の列におけるシフトに対応する。パスの終端において差分の合計が0(mod−p)になる場合にのみ、パスは、開始した置換行列の同じ変数ノードに戻り、それによって、サイクルが定義される。図2の例について、長さ4のサイクルが存在するには、条件は、下式(4)となる。
Figure 0005116735
これは、p=0、p=1、p=2、p=1の場合には満たされるが、p=0、p=p=p=1の場合には満たされない。QC−LDPC符号の各サイクルは、循環部分行列におけるp−1個の可能な巡回シフトによって得られるp−1個の他のサイクルに必然的に関係付けられる。
同じロジックは、より長いサイクルに拡張される。長方形に配列された基本行列の4つの要素を通る4サイクル通過については、符号のタナーグラフにおける長さ2iの任意のサイクルが、順序付けられた下式(5)の配列によって表された基本行列の2i個の要素を通過する。
Figure 0005116735
ここで、1≦k<i、j≠jk−1、l≠lk−1、ji−1≠j、及びli−1≠lである。この順序付けられた配列は、長さ2iの「潜在的」なサイクルとみなすことができる。実際には、この配列は、基本行列においてトラバースされた要素が、式(4)を一般化したものを満たす場合にのみサイクルに対応する。この一般化したものを定義するために、以下の表記を使用する。下式が定義される。
Figure 0005116735
符号が少なくとも2(i+1)のガースを有するための必要十分条件は、下式(6)である。
Figure 0005116735
あらゆる次元対(J,L)及びガースg(グラフの最小の長さのサイクル)について、p<pmin又はN<Nminであるときに、上式(6)を満たすパリティ検査行列が存在しないようなpmin(すなわち、Nmin)が存在する。
次元(J,L)及びガースgの高ガースQC−LDPC符号を構成する方法を提供する。この方法は、基本行列Bと、その基本行列から構成された指定された符号がそのガースを有し、且つpがpminに等しいか、又は少なくともできるだけpminに近くなるようなpの値とを返す。
1つの従来技術の方法は、「推測及び試験」方法を使用する。これについては、Fossorier著「Quasi-cyclic low-density parity-check codes from circulant permutation matrices」(IEEE Trans. Inform. Theory, vol. 50, no. 8, pp. 1788-1793, Aug. 2004)を参照されたい。推測及び試験方法では、上式(6)が満たされるような集合が見つかるまで、基本行列Bの非ゼロの要素について、0とp−1との間の(J−1)(L−1)個の整数が、ランダム且つ独立同一に分散される。
Fossorierは、ガース8以上の符号について、基本行列のすべての非ゼロの値が異なっていなければならないことを示している。それらのガースについてのFossorierの方法は、すべての整数が異なるように、(J−1)(L−1)個の整数が、1からp−1までの範囲でランダムに選択される方法であると考えられる。推測及び試験方法に関する問題は、この方法が、特に大きな基本行列であって、NがNminに接近している場合には、多くの時間を要するということである。
ヒルクライミング最適化手順
本発明の方法は、「ヒルクライミング」最適化手順である。ヒルクライミングは、多くの解を有するが、いくつかの解は他のものよりも優れている問題を解くのに使用することができる最適化技法である。この手順は、問題のランダム初期解から開始し、小さな変更を反復的に行って、その解を改善するものである。
本発明では、ランダムに選択された基本行列Bから開始する。また、コストからなる対応するコスト行列Cも有する。次に、「移動」を行うことによって基本行列Bを変更する。この移動によって、基本行列の単一の要素(pj,l)の値が変更される。コストの削減を最大にする移動を選択する。コストは、基本行列Bに残っているガースよりも短い長さのサイクルの数の関数である。
基本行列のどの単一の値も、コストをさらに削減する値にもはや変更することができず、したがって、非所望のより短いサイクルの数になると、この方法は終了する。
この手順は、コスト行列Cによって定義されるコスト関数が非所望のサイクルの加重和であり、且つ異なる重みのサイクルがコスト関数において異なる重みを有するローカルヒルクライミングを使用する。
本発明の方法は、現在の符号の各長さのサイクルの数を追跡し、基本行列Bの各可能な要素を他の可能な値に変更する場合に、その結果得られるサイクルの数を追跡する。
この方法は、大きなガースを有する符号を検索するとき、サイクルがタナーグラフにおいて形成することができる多くの可能な方法のために、より複雑なものとなる。
コスト行列
コスト行列Cは、サイクルの数の加重和の点から、基本行列Bの任意の値を変更して、他の任意の可能な値を有するようにするコストを示す。したがって、任意の基本行列Bについて、下式(7)に示すような、対応するコスト行列が存在する。
Figure 0005116735
ここで、cj,l=[cj,l,0,cj,l,1,...,cj,l,p−1]は、コストであり、cj,l,zは、基本行列Bの要素pj,lを0≦z≦p−1の値zに割り当てるためのコストである。
を、順序付けられた配列によって表される、すべての可能で且つ異なる長さ2iの潜在的なサイクルの集合を表すものとし、|S|を、集合S内のすべての要素の個数を表すものとする。したがって、1≦k≦|S|について、下式のSikを有するS={si1,si2,...,si|Si|}となる。
Figure 0005116735
ガースは、gであり、重みベクトルは、w=[w,w,...,wg/2−1]である。ここで、wは、長さ2iのサイクルの重み又はコストである。
基本行列について、対応するコスト行列Cは、次のものに基づいている。各潜在的なサイクルについて、その潜在的なサイクルにおける基本行列の要素のそれぞれを調べる。各要素について、その潜在的なサイクルの他のすべての基本行列の要素が同じままであると仮定して、どの値がサイクルを引き起こすのかをチェックし、要素のその値をマーキングする。
たとえば、潜在的な6サイクルについて、p−p+p−p+p−p mod p=0である場合にのみサイクルが存在することが分かっている。ここで、p〜pは、この潜在的な6サイクルの要素である。したがって、p−p+p−p+p−p mod pの現在の合計の値が1である場合、p、p、及びpのマーキングされた値が現在の値よりも小さな値であり、且つ、p、p、及びpのマーキングされた値が現在の値よりも大きな値であることが分かる。
これは、基本行列の2i個の異なる要素を含む潜在的なサイクルについては、比較的簡単である。潜在的なサイクルにおける基本行列のいくつかの要素が2回現れる場合には、これはより複雑になる。これは、サイズ8以上のサイクルについて生じる可能性があり、たとえば、図2の部分グラフ212で生じる。このような場合、基本行列のパスは、要素を3回通過するので、要素の値が変化すると、交代和(alternating sum)に対する貢献は、図2の長さ12のサイクル232において2倍又は3倍になる。したがって、マーキングする値を見つけることは、より複雑となる。実際に、pが偶数であり且つ交代和の現在の値が偶数である場合には、2回繰り返す要素についてマーキングされた値が2つ以上存在する可能性がある。他方、pが偶数であり且つ交代和の現在の値が奇数である場合には、2回繰り返す要素についてマーキングされる値は存在しない場合がある。
形式的には、次のようにコスト行列が求められる。
ステップ1
0≦j≦J−1、0≦l≦L−1、及び0≦z≦p−1について、
コスト行列cj,l,z=0を求める。
ステップ2
2≦i≦g/2−1について、
i.0≦j≦J−1、0≦l≦L−1、及び0≦z≦p−1について、
(i) j,l,z=0を設定する。ここで、x(i) j,l,zは、基本行列の要素pj,lが値zを有する場合に結果として生じる長さ2iのサイクルの数のカウントである。
ii.1≦k≦|S|について、下式の交代和αを求める。
Figure 0005116735
iii.0≦e≦2i―1について、
Figure 0005116735
がsikにおいて固有である場合、マーキングされた値βを下式により求める。
Figure 0005116735
iv.
Figure 0005116735
がsikにおいて固有でなく初めて生じ且つα mod 2=0である場合、マーキングされた値βを下式により求める。
Figure 0005116735
v.
Figure 0005116735
がsikにおいて固有でなく初めて生じ且つ(p−α)mod 2=0である場合、追加のマーキングされた値βを下式により求める。
Figure 0005116735
vi.上記3つの場合のそれぞれにおいて、下式をインクリメントする。
Figure 0005116735
ステップ3
0≦j≦J−1、0≦l≦L−1、及び0≦z≦p−1について、下式の加重和を取る。
Figure 0005116735
コスト行列を求めるためのこの方法によると、ヒルクライミング方法は、記述するのが比較的簡単である。
本発明では、ランダムな基本行列B及び対応するコスト行列Cから開始して、基本行列及びその基本行列の要素の現在の値のそれぞれについてゼロコストを有する対応するコスト行列が見つかるまで、ランダムに関係を絶ちながら、コストの削減を最大にする単一の基本行列の要素の値を変更する移動を選択し続ける。この時点で、基本行列Bを返すか、又は正のコストを有する局所最適解で終了する場合には、失敗状態を示す。
図3は、本発明の方法を詳細に示している。QC−LDPC符号のパラメータを初期化する(310)。これらのパラメータは、基本行列BのJ及びLの次元、基本行列Bの部分行列pのサイズ、並びに基本行列Bの全ゼロ部分行列の位置を含む。
ガースg及び重みベクトルw=[w,w,...,wg/2−1]を指定する(311)。重みベクトルwは、ガースgよりも短い長さを有する各タイプのサイクルの重みを有する。重みベクトルは、異なるタイプのサイクルの「コスト」を表す。
符号の初期パラメータに従って、初期基本行列Bをランダムに選択する(320)。
基本行列B並びに指定されたガースg及び重みベクトルwに対応するコスト行列Cを求める(330)。このステップは、上記で詳細に説明した。
コスト行列Cを使用して利得行列Gを生成する(340)。0≦j≦J−1及び0≦l≦L−1について、下式とする。
Figure 0005116735
ここで、
Figure 0005116735
は、基本行列Bの位置j,lにおける可能な最小コストであり、
Figure 0005116735
は、そのコストを与える要素pj,lの値であり、c’j,lは、要素pj,lの現在の値に関連付けられたコストである。利得行列G=[gj,l]は、下式として生成される。
Figure 0005116735
利得行列は、基本行列の各位置j,lにおける要素の最良の移動の値を表す。
次に、下式を求める。
Figure 0005116735
すべて同じ最大利得を達成する複数の要素j,lが存在する場合、ランダムに関係が絶たれる。最大利得gmaxが正であるか否かをチェックする(350)。
真である場合、最大利得ステップ
Figure 0005116735
を選択することによって基本行列Bを更新し(360)、コスト行列Cを求めるステップ(330)を繰り返す。
そうではなく偽である場合、すべての0≦j≦J−1及び0≦l≦L−1についてすべてのコスト
Figure 0005116735
が0であるか否かをチェックする(370)。真である場合、本発明のすべての要件を満たすQC−LDPC符号の所望の基本行列Bを有することになり、現在の基本行列Bを出力する(380)。そうではなく偽である場合、FAILURE(失敗)を出力する(381)。QC−LDPC符号150のパリティ検査行列Hが、基本行列Bから構成される(390)。
次に、QC−LDPC符号、すなわち、パリティ検査行列H150を符号化器で使用して、チャネル130を通じて復号器へ送信される情報ブロックu[a]を符号化する(120)ことができ、情報ブロックを再構成することができる。符号化された情報ブロックは、後のリトリーブに備えて記憶媒体に書き込むこともできる。
図4〜図6のグラフは、J=3、L=9、g=8(ヒルクライミングの401、Fossorierの推測及び試験の402)、J=3、L=12,g=8(ヒルクライミングの501、推測及び試験の502)、及びJ=3,L=9、g=10(ヒルクライミングの601、推測及び試験の602)のそれぞれについて、成功率及び循環行列サイズpの関数としてヒルクライミング方法をFossorierの推測及び試験方法と比較している。L及びgが増加するにつれて、本発明のヒルクライミングの成功率は、次第に、従来技術の推測及び試験の成功率よりも優れてきている。
これらのグラフに示すように、その成功率は、従来技術の方法よりも少なくとも3桁大きい。

Claims (10)

  1. 符号を構成する方法であって、該符号は、準巡回低密度パリティ検査符号であり、該方法は、
    前記符号の基本行列を選択するステップと、
    前記基本行列に対応するコスト行列を求めるステップと、
    コストの削減を最大にするために、前記基本行列の単一の要素を繰り返し変更するステップと、
    前記コストが0であるとき、前記符号のパリティ検査行列を前記基本行列から構成するステップと、
    符号化器において、前記パリティ検査行列を使用して情報ブロックを符号語として符号化するステップと
    を含み、
    前記変更するステップは、ヒルクライミング手順を使用し、
    前記コスト行列は、前記基本行列の任意の値を他の任意の可能な値に変更するコストを示す
    方法。
  2. 前記基本行列は、パラメータに従って初期化される請求項1に記載の方法。
  3. 前記コスト行列は、前記符号のガース、及び前記符号のサイクルに基づく重みベクトルに従って求められる請求項1に記載の方法。
  4. 前記コスト行列を使用して利得行列を生成し、該利得行列の最大の正の利得を使用して前記削減を生成するステップをさらに含む請求項1に記載の方法。
  5. 前記基本行列は、前記パラメータに基づいてランダムに選択される請求項に記載の方法。
  6. 前記コストは、前記ガース未満の長さを有する前記サイクルの数の関数である請求項に記載の方法。
  7. 前記コストは、非所望のサイクルの加重和に基づいている請求項に記載の方法。
  8. 前記チャネルは、通信チャネルである請求項1に記載の方法。
  9. 前記チャネルは、後の回復及び復号に備えて、前記符号化された情報ブロックを記憶媒体上に書き込むステップを含む請求項1に記載の方法。
  10. チャネルを通じて前記符号語を送信するステップと、
    前記情報ブロックを回復するために復号器において前記符号語を復号するステップと
    をさらに含む請求項1に記載の方法。
JP2009189095A 2008-08-27 2009-08-18 符号を構成する方法 Expired - Fee Related JP5116735B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/199,512 2008-08-27
US12/199,512 US8103931B2 (en) 2008-08-27 2008-08-27 Method for constructing large-girth quasi-cyclic low-density parity-check codes

Publications (2)

Publication Number Publication Date
JP2010057177A JP2010057177A (ja) 2010-03-11
JP5116735B2 true JP5116735B2 (ja) 2013-01-09

Family

ID=41727088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009189095A Expired - Fee Related JP5116735B2 (ja) 2008-08-27 2009-08-18 符号を構成する方法

Country Status (2)

Country Link
US (1) US8103931B2 (ja)
JP (1) JP5116735B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104980166A (zh) * 2015-06-20 2015-10-14 荣成市鼎通电子信息科技有限公司 共享存储机制的wpan中准循环ldpc串行编码器

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010019169A1 (en) * 2008-08-15 2010-02-18 Lsi Corporation Rom list-decoding of near codewords
US8433972B2 (en) * 2009-04-06 2013-04-30 Nec Laboratories America, Inc. Systems and methods for constructing the base matrix of quasi-cyclic low-density parity-check codes
JP5432367B2 (ja) 2009-04-21 2014-03-05 アギア システムズ インコーポレーテッド 書込み検証を使用した符号のエラーフロア軽減
US8321746B2 (en) * 2009-07-30 2012-11-27 Lsi Corporation Systems and methods for quasi-cyclic LDPC code production and decoding
US8464142B2 (en) 2010-04-23 2013-06-11 Lsi Corporation Error-correction decoder employing extrinsic message averaging
US8499226B2 (en) 2010-06-29 2013-07-30 Lsi Corporation Multi-mode layered decoding
US8458555B2 (en) 2010-06-30 2013-06-04 Lsi Corporation Breaking trapping sets using targeted bit adjustment
US8504900B2 (en) 2010-07-02 2013-08-06 Lsi Corporation On-line discovery and filtering of trapping sets
CN101917249B (zh) * 2010-07-27 2012-11-14 清华大学 Qc-ldpc码译码器及其实现方法
CN102790622B (zh) * 2011-05-19 2017-03-15 中兴通讯股份有限公司 低密度奇偶校验码校验矩阵的构造方法及装置
US8499218B2 (en) * 2011-09-30 2013-07-30 Mitsubishi Electric Research Laboratories, Inc. System and method for determining quasi-cyclic low-density parity-check codes having high girth
US8595589B2 (en) * 2011-09-30 2013-11-26 Mitsubishi Electric Research Laboratories, Inc. Quasi-cyclic low-density parity-check codes
US8768990B2 (en) 2011-11-11 2014-07-01 Lsi Corporation Reconfigurable cyclic shifter arrangement
KR101922990B1 (ko) 2011-11-11 2018-11-28 삼성전자주식회사 멀티미디어 통신 시스템에서 준순환 저밀도 패리티 검사 부호 송/수신 장치 및 방법
RU2012146685A (ru) 2012-11-01 2014-05-10 ЭлЭсАй Корпорейшн База данных наборов-ловушек для декодера на основе разреженного контроля четности
CN104104393A (zh) * 2013-04-02 2014-10-15 盐城师范学院 一种具有简单迭代码结构的准循环ldpc码设计方法
CN103346802B (zh) * 2013-06-04 2014-12-31 上海华力创通半导体有限公司 Qc-ldpc码的构造方法
CN103731157B (zh) * 2013-12-16 2017-07-07 西安邮电大学 准循环低密度校验码的联合构造方法
CN104485970B (zh) * 2014-10-27 2017-07-28 清华大学 单码率、多码率qc‑ldpc码的模板矩阵的构造方法
CN105071818A (zh) * 2015-08-31 2015-11-18 四川特伦特科技股份有限公司 一种低复杂度ldpc码编码方法
WO2018014249A1 (zh) * 2016-07-20 2018-01-25 华为技术有限公司 低密度奇偶校验码基矩阵生成方法及装置
EP3533145B1 (en) 2016-11-21 2022-04-06 Huawei Technologies Co., Ltd. Generation of spatially-coupled quasi-cyclic ldpc codes
CN108288967A (zh) * 2017-01-09 2018-07-17 电信科学技术研究院 一种低密度奇偶校验ldpc码构造方法及装置
CN110754042B (zh) 2017-06-15 2024-06-04 华为技术有限公司 信息处理的方法和通信装置
WO2019001090A1 (zh) * 2017-06-27 2019-01-03 华为技术有限公司 信息处理的方法、装置和通信设备
CN118473422A (zh) 2017-06-27 2024-08-09 华为技术有限公司 信息处理的方法、装置和通信设备
DK3491741T3 (da) 2017-06-27 2020-03-02 Ericsson Telefon Ab L M Udformning af forskydningsværdier til kvasi-cykliske ldpc-koder
CN109617554B (zh) * 2018-11-22 2023-02-03 周口师范学院 一种基于任意阵列的q元准循环ldpc码构造方法
CN109743061A (zh) * 2018-12-07 2019-05-10 天津津航计算技术研究所 一种码长可配置的ldpc编码实现方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6633856B2 (en) 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US6895547B2 (en) * 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
KR20050044963A (ko) 2003-11-08 2005-05-16 삼성전자주식회사 q차 제곱 잉여류를 이용한 준순환 저밀도 패러티 검사부호 생성 방법
EP1934824A4 (en) * 2004-06-25 2010-01-06 Runcom Technologies Ltd MEHRRATEN-LDPC-CODESYSTEM UND -VERFAHREN
US7752520B2 (en) 2004-11-24 2010-07-06 Intel Corporation Apparatus and method capable of a unified quasi-cyclic low-density parity-check structure for variable code rates and sizes
JP4563454B2 (ja) * 2005-08-10 2010-10-13 三菱電機株式会社 検査行列生成方法、符号化方法、復号方法、通信装置、通信システム、符号化器および復号器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104980166A (zh) * 2015-06-20 2015-10-14 荣成市鼎通电子信息科技有限公司 共享存储机制的wpan中准循环ldpc串行编码器

Also Published As

Publication number Publication date
JP2010057177A (ja) 2010-03-11
US20100058139A1 (en) 2010-03-04
US8103931B2 (en) 2012-01-24

Similar Documents

Publication Publication Date Title
JP5116735B2 (ja) 符号を構成する方法
US8595589B2 (en) Quasi-cyclic low-density parity-check codes
US8499218B2 (en) System and method for determining quasi-cyclic low-density parity-check codes having high girth
Kang et al. Quasi-cyclic LDPC codes: An algebraic construction
Tanner et al. LDPC block and convolutional codes based on circulant matrices
Chen et al. Two low-complexity reliability-based message-passing algorithms for decoding non-binary LDPC codes
KR101227264B1 (ko) Ldpc 코드용 디코더
KR20090092892A (ko) Ldpc 코드를 이용한 복호화 방법
US8429483B1 (en) Edge-based decoders for low-density parity-check codes
US20070094582A1 (en) Encoding method to QC code
JP4832447B2 (ja) チャネルコードを用いた復号化装置及び方法
Esfahanizadeh et al. A novel combinatorial framework to construct spatially-coupled codes: Minimum overlap partitioning
Li et al. Reed-Solomon based globally coupled quasi-cyclic LDPC codes
Chen et al. Construction of low-density parity-check convolutional codes through progressive edge-growth
WO2020062982A1 (zh) 构造ldpc码校验矩阵的方法及ldpc码编译方法
Lan et al. Constructions of quasi-cyclic LDPC codes for the AWGN and binary erasure channels based on finite fields and affine mappings
Park Construction of Quasi-Cyclic LDPC Codes Using a Class of Balanced Incomplete Block Designs with Irregular Block Sizes.
Diao et al. Trapping set structure of LDPC codes on finite geometries
Li et al. Balanced incomplete block designs, partial geometries, and their associated QC-LDPC codes
Nguyen et al. LDPC codes from latin squares free of small trapping sets
CN108199722B (zh) 一种基于矩阵格的bibd-ldpc码构造方法
Zhan et al. Quasi-cyclic LDPC codes based on D and Q matrices through progressive edge growth
RU2365034C2 (ru) Способ и устройство для кодирования и декодирования данных
Qi et al. Low-Complexity Encoding of LDPC Codes: A New Algorithm and its Performance
Lulu Construction Of Ldpc Codes Using Randomly Permutated Copies Of Parity Check Matrix

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120621

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20120621

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20120723

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120731

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120829

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: 20120918

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: 20121016

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20151026

Year of fee payment: 3

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

LAPS Cancellation because of no payment of annual fees