JP5696068B2 - 符号化装置及び通信装置 - Google Patents

符号化装置及び通信装置 Download PDF

Info

Publication number
JP5696068B2
JP5696068B2 JP2012037397A JP2012037397A JP5696068B2 JP 5696068 B2 JP5696068 B2 JP 5696068B2 JP 2012037397 A JP2012037397 A JP 2012037397A JP 2012037397 A JP2012037397 A JP 2012037397A JP 5696068 B2 JP5696068 B2 JP 5696068B2
Authority
JP
Japan
Prior art keywords
type
matrix
branches
protograph
nodes
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
JP2012037397A
Other languages
English (en)
Other versions
JP2013175799A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2012037397A priority Critical patent/JP5696068B2/ja
Priority to EP12199353.9A priority patent/EP2632050A1/en
Priority to US13/727,422 priority patent/US9264072B2/en
Publication of JP2013175799A publication Critical patent/JP2013175799A/ja
Application granted granted Critical
Publication of JP5696068B2 publication Critical patent/JP5696068B2/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/1154Low-density parity-check convolutional codes [LDPC-CC]
    • 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/13Linear 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

実施形態は、誤り訂正符号化に関する。
空間結合LDPC符号は、LDPC畳み込み符号の構成法に基づいて開発された。具体的には、空間結合LDPC符号は、空間結合プロトグラフによって定義される。空間結合プロトグラフは、複数のレギュラーLDPC符号のプロトグラフを連結することによって形成される。空間結合LDPC符号の繰り返し復号時(即ち、BP(Belief Propagation)復号時)の性能限界は、対応する空間結合プロトグラフを形成するレギュラーLDPC符号の最尤復号性能に到達する。ここで、レギュラーLDPC符号の最尤復号性能は、対応する検査ノードの次数(即ち、対応するパリティ検査行列の行重み)が大きく設定されるほどシャノン限界(即ち、理論限界)に漸近する。即ち、検査ノードの次数が非常に大きく設定されたレギュラーLDPC符号に基づく空間結合LDPC符号の繰り返し復号性能は、シャノン限界に漸近できる。反面、繰り返し復号において1試行あたりの計算量は、一般に検査ノードの次数に比例する。故に、空間LDPC符号の繰り返し復号性能をシャノン限界に漸近させると、計算量が非常に大きくなる。
また、MacKay−Neal(MN)符号及びHsu−Anastasopoulos(HA)符号は、その最尤復号性能がシャノン限界に漸近すると予想されている。これらMN符及びHA符号に基づく空間結合MN符号及び空間結合HA符号について、2元消失通信路上での繰り返し復号性能がシャノン限界に漸近することが数値計算を通じて確認されている。ここで、MN符号及びHA符号の検査ノードの次数は定数で与えられる。この定数は、レギュラーLDPC符号の最尤復号性能をシャノン限界に漸近させる場合に設定される検査ノードの次数に比べて小さい。故に、空間結合MN符号及び空間結合HA符号によれば、前述のレギュラーLDPC符号に基づく空間結合LDPC符号に比べて、繰り返し復号性能をシャノン限界に漸近させた場合の計算量を小さくすることができる。但し、空間結合MN符号及び空間HA符号はいずれも非組織符号であるから、復号処理を経由しなければ符号語ビット列から情報ビット列を取り出すことができない。
S. Kudekar, T. Richardson, and R. Urbanke, "Threshold saturation via spatial coupling: Why conventional LDPC ensembles perform so well over the BEC," IEEE Transactions on Information Theory, vol. 57, pp. 803−834, February 2011. K. Kasai and K. Sakaniwa, "Spatially−Coupled MacKay−Neal Codes and Hsu−Anastasopoulos Codes," in IEEE International Symposium on Information Theory (ISIT), August 2011, Saint−Petersburg, Russia. J. Thorpe, "Low Density Parity Check (LDPC) Codes Constructed from Protographs," JPL IPN Progress Report 42−154, August 2003.
実施形態は、組織符号においてシャノン限界に近い繰り返し復号性能を達成することを目的とする。
実施形態によれば、符号化装置は、符号化部を具備する。符号化部は、情報ビット列に符号化を行うことによって、パリティ検査行列に対応する符号語を生成する。パリティ検査行列は、空間結合行列に複製置換操作を施すことによって得られる行列に一致する。空間結合行列において、複数の展開行列を行方向に結合した行列が対角方向に複数個配列される。複数の展開行列の総和は、基本行列に一致する。基本行列は、n個(nは1以上の整数)の第1のタイプの検査ノードと、n個の第2のタイプの検査ノードと、n個の第1のタイプの変数ノードと、n個の第2のタイプの変数ノードと、n個の第3のタイプの変数ノードと、n本以上の第1のタイプの枝と、2n本以上の第2のタイプの枝と、rn本(rは3以上の整数)の第3のタイプの枝と、gn本(gは2以上の整数)の第4のタイプの枝とを含むプロトグラフに対応する。プロトグラフにおいて、n個の第1のタイプの検査ノードの各々は、n個の第1のタイプの変数ノードと合計1本以上の第1のタイプの枝によって接続され、n個の第2のタイプの変数ノードと合計2本以上の第2のタイプの枝によって接続される。プロトグラフにおいて、n個の第2のタイプの検査ノードの各々は、n個の第2のタイプの変数ノードと合計r本の第3のタイプの枝によって接続され、n個の第3のタイプの変数ノードと合計g本の第4のタイプの枝によって接続される。プロトグラフにおいて、n個の第1のタイプの変数ノードの各々は、n個の第1のタイプの検査ノードと合計1本以上の第1のタイプの枝によって接続される。プロトグラフにおいて、n個の第2のタイプの変数ノードの各々は、n個の第1のタイプの検査ノードと合計2本以上の第2のタイプの枝によって接続され、n個の第2のタイプの検査ノードと合計r本の第3のタイプの枝によって接続される。プロトグラフにおいて、n個の第3のタイプの変数ノードの各々は、n個の第2のタイプの検査ノードと合計g本の第4のタイプの枝によって接続される。
第1の実施形態に係る符号化装置を例示するブロック図。 プロトグラフ及び基本行列の説明図。 複製置換操作の説明図。 プロトグラフを例示する図。 プロトグラフを例示する図。 プロトグラフを例示する図。 第2の実施形態に係る記憶装置を例示するブロック図。 第3の実施形態に係る通信装置を例示するブロック図。 第3の実施形態に係る通信装置を例示するブロック図。
以下、図面を参照しながら実施形態の説明が述べられる。尚、以降、説明済みの要素と同一または類似の要素には同一または類似の符号が付され、重複する説明は基本的に省略される。パリティ検査行列の性質は、当該パリティ検査行列に行基本変形及び列基本変形が施されても変化しない。従って、以降の説明において、第1のパリティ検査行列に対して行基本変形及び列基本変形の少なくとも一方を任意に施すことによって導出可能な第2のパリティ検査行列は、第1のパリティ検査行列と同一とみなされる。
(第1の実施形態)
第1の実施形態に係る符号化装置及び復号装置は、誤り訂正符号化及び誤り訂正復号をそれぞれ行う。これら符号化装置及び復号装置は、例えば記憶システム、通信システムなどに組み込まれる。具体的には、これら符号化装置及び復号装置は、不揮発性半導体記憶システム、通信システム、光記録システム、磁気記録システムなど、誤り訂正符号を利用可能なあらゆるシステムに適用されてよい。
本実施形態における誤り訂正符号は、例えば、いわゆる空間結合LDPC符号である。空間結合LDPC符号は、パリティ検査行列によって定義される可変長LDPC符号である。このパリティ検査行列は、一般的にはプロトグラフ(即ち、2部グラフ)或いはその行列表現である基本行列(=B)を用いて定義される。本実施形態に係る符号化装置は、パリティ検査行列に対応する符号語を生成する。パリティ検査行列に対応する符号語とは、当該パリティ検査行列との積が零ベクトルとなる符号語を意味する。
基本行列は、m行×n列の非零行列である。基本行列は、(1+d)個の展開行列(=B,・・・,B)へと展開されて使用される。ここで、dは1以上の整数である。尚、B及びBは非零行列であるが、これら以外のB,・・・,Bd−1の一部または全部は零行列であってもよい。基本行列は、下記数式(1)に示されるように、(1+d)個の展開行列の総和に等しい。換言すれば、(1+d)個の展開行列の各々は、基本行列に対応するプロトグラフを分解した部分プロトグラフに対応する。
Figure 0005696068
そして、(1+d)個の展開行列を行方向に結合した(1+d)m行×n列の非零行列を対角方向にL個配列することによって、下記数式(2)に示されるように、空間結合行列B[1,L]を導出できる。この対角方向に配列されたL個の非零行列は、帯行列と呼ぶこともできる。ここで、Lは空間結合LPDC符号の符号語長を決定するパラメータである。Lは2以上の整数である。尚、以降の説明において、行列またはベクトルの要素として「0」が記載されている場合に、この「0」は単なる零を意味することもあるし、零行列または零ベクトルを意味することもある。
Figure 0005696068
数式(2)に示される空間結合行列(=B[1,L])に対して後述される複製置換操作を施すことによって、空間結合LDPC符号のパリティ検査行列が導出できる。尚、基本行列及びその展開行列はプロトグラフの行列表現であるから、B[1,L]はプロトグラフを空間結合したもの(空間結合プロトグラフとも呼ばれる)の行列表現として扱うことができる。また、プロトグラフに基づくパリティ検査行列によって定義されるLDPC符号は、プロトグラフLDPC符号と呼ばれる。空間結合LDPC符号は、プロトグラフLPDC符号の一種として扱うことができる。
前述のように、基本行列は、プロトグラフの行列表現である。具体的には、図2に示されるように、基本行列の行インデックスは検査ノードのタイプを特定し、列インデックスは変数ノードのタイプを特定し、各要素はその行インデックス及び列インデックスによって特定されるタイプの検査ノード及び変数ノードの間を接続する枝の本数を特定する。また、要素が非零である場合には、当該非零要素について枝のタイプを定めることができる。図2の例では、第1行第1列の要素が2であることから、第1のタイプ(行インデックス=1)の検査ノード(=C)及び第1のタイプ(列インデックス=1)の変数ノード(=V)が2本の第1のタイプの枝によって接続される。また、第1行第2列の要素が1であることから、第1のタイプの検査ノード(=C)及び第2のタイプ(列インデックス=2)の変数ノード(=V)が1本の第2のタイプの枝によって接続される。
複製置換操作の詳細は非特許文献3に記述されているが、複製置換操作の概略が以下に説明される。基本行列(或いはプロトグラフ)の複製置換操作は、図3に例示されるように、基本行列をZ個(図3の例では4個)複製する操作と、複製されたZ個の基本行列において枝の接続を置換する操作とを含む。Zは、複製数を表すパラメータであり、2以上の整数である。置換操作は、プロトグラフの構造を維持した状態で行う必要がある。具体的には、各検査ノード及び各変数ノードに接続される枝の本数は、置換操作の前後を通じて一致する必要がある。換言すれば、置換操作の前後を通じて、各枝が接続する検査ノードのタイプ及び変数ノードのタイプは一致する必要がある。
図3の例であれば、下記の構造が置換操作の前後を通じて維持されている。(1)第1のタイプ(行インデックス=1,2,3,4)の検査ノードのうち任意の1つと、第1のタイプ(列インデックス=1,2,3,4)の変数ノードとの間は合計2本の枝によって接続される。(2)第1のタイプの検査ノードのうち任意の1つと、第2のタイプ(列インデックス=5,6,7,8)の変数ノードとの間は合計1本の枝によって接続される。(3)第1のタイプの変数ノードのうち任意の1つと、第1のタイプの検査ノードとの間は合計2本の枝によって接続される。(4)第2のタイプの変数ノードのうち任意の1つと、第1のタイプの検査ノードとの間は合計1本の枝によって接続される。
尚、複製置換操作における置換操作として巡回置換操作を行うことによって、Quasi−Cyclic LDPC符号を構成することができる。Quasi−Cyclic LDPC符号は、実装が比較的容易である。
前述のように、空間結合LDPC符号において、基本行列(=B)に基づく空間結合行列(=B[1,L])が複製置換操作の対象である。以下、基本行列について説明される。
本実施形態において用いられる基本行列は、例えば下記数式(3)に示されるものである。或いは、数式(3)に示される行列に対して複製置換操作を施すことによって、基本行列を導出してもよい。係る場合には、後述されるように、同タイプの検査ノード、変数ノード及び枝が複製数に応じて増大する。例えば、複製数をn(n=1(複製置換操作せず),2,・・・)として一般化すれば、同タイプの検査ノード、変数ノード及び枝の数がn倍になる。
Figure 0005696068
数式(3)において、k,r,g,eは設定可能なパラメータを表す。kは、1以上の整数である。rは3以上の整数である。gは2以上の整数である。eは0以上の整数である。尚、数式(3)に示される基本行列において、第1行第1列の要素「1」ならびに第1行第2+e列の要素「2」は例示であり、いずれもより大きな整数に置き換えられてよい。但し、符号化に必要な計算量を抑える観点では、基本行列の各要素は小さいことが好ましい。
上記数式(3)における行列Eは、下記数式(4)に示されるように、k行×e列の行列である。行列Eの要素は全てrである。尚、e=0の場合には、行列Eは存在しない。
Figure 0005696068
上記数式(3)における行列Aは、下記数式(5)に示されるように、k行×1列の行列(即ち、縦ベクトル)である。行列Aの要素は全てrである。
Figure 0005696068
上記数式(3)における行列Dは、下記数式(6)に示されるように、k行×k列の正方行列である。行列Dは、対角要素が全てgであって、非対角要素が全て零である。
Figure 0005696068
上記数式(3)の基本行列(=B)のうち左から第1列,・・・,第1+e列は情報ビットに対応する。この基本行列のうち左から第2+e列,・・・,第2+e+k列はパリティビットに対応する。尚、この基本行列のうち左から第2+e列は、複製置換操作によって得られるパリティ検査行列においてパンクチャビットに対応する。後述されるように、パンクチャビットは外部(例えば、通信路、記憶媒体など)へ供給されない。従って、この基本行列に基づくプロトグラフLDPC符号の符号化率は、下記数式(7)で表すことができる。
Figure 0005696068
前述のように、上記数式(3)においてk,r,g,eは設定可能なパラメータである。これらに様々な値を与えることによって、所望の基本行列を設計することができる。例えば、k=1,r=3,g=2,e=0の場合には、下記数式(8)に示される基本行列を得ることができる。
Figure 0005696068
数式(8)の基本行列に対応するプロトグラフが図4に示される。この基本行列の第1行第1列は、第1のタイプ(行インデックス=1)の検査ノードCT1−1と第1のタイプ(列インデックス=1)の変数ノードVT1−1との間が1本の第1のタイプの枝ET1−1で接続されることを示す。第1行第2列は、第1のタイプの検査ノードCT1−1と第2のタイプ(列インデックス=2)の変数ノードVT1−2との間が2本の第2のタイプの枝ET1−2で接続されることを示す。第2行第2列は、第2のタイプ(行インデックス=2)の検査ノードCT1−2と第2のタイプの変数ノードVT1−2との間が3(=r)本の第3のタイプの枝ET1−3で接続されることを示す。第2行第3列は、第2のタイプの検査ノードCT1−2と第3のタイプ(列インデックス=3)の変数ノードVT1−3との間が2(=g)本の第4のタイプの枝ET1−4で接続されることを示す。
また、k=2,r=3,g=2,e=0の場合には、下記数式(9)に示される基本行列を得ることができる。
Figure 0005696068
数式(9)の基本行列に対応するプロトグラフが図5に示される。この基本行列の第1行第1列は、第1のタイプ(行インデックス=1)の検査ノードCT2−1と第1のタイプ(列インデックス=1)の変数ノードVT2−1との間が1本の第1のタイプの枝ET2−1で接続されることを示す。第1行第2列は、第1のタイプの検査ノードCT2−1と第2のタイプ(列インデックス=2)の変数ノードVT2−2との間が2本の第2のタイプの枝ET2−2で接続されることを示す。第2行第2列は、第2のタイプ(行インデックス=2)の検査ノードCT2−2と第2のタイプの変数ノードVT2−2との間が3(=r)本の第3のタイプの枝ET2−3で接続されることを示す。第2行第3列は、第2のタイプの検査ノードCT2−2と第3のタイプ(列インデックス=3)の変数ノードVT2−3との間が2(=g)本の第4のタイプの枝ET2−4で接続されることを示す。第3行第2列は、第3のタイプ(行インデックス=3)の検査ノードCT2−3と第2のタイプの変数ノードVT2−2との間が3(=r)本の第5のタイプの枝ET2−5で接続されることを示す。第3行第4列は、第3のタイプの検査ノードCT2−3と第4のタイプ(列インデックス=4)の変数ノードVT2−4との間が2(=g)本の第6のタイプの枝ET2−6で接続されることを示す。
また、k=1,r=3,g=2,e=1の場合には、下記数式(10)に示される基本行列を得ることができる。
Figure 0005696068
数式(10)の基本行列に対応するプロトグラフが図6に示される。この基本行列の第1行第1列は、第1のタイプ(行インデックス=1)の検査ノードCT3−1と第1のタイプ(列インデックス=1)の変数ノードVT3−1との間が1本の第1のタイプの枝ET3−1で接続されることを示す。第1行第3列は、第1のタイプの検査ノードCT3−1と第2のタイプ(列インデックス=3)の変数ノードVT3−2との間が2本の第2のタイプの枝ET3−2で接続されることを示す。第2行第2列は、第2のタイプ(行インデックス=2)の検査ノードCT3−2と第4のタイプ(列インデックス=2)の変数ノードVT3−4との間が3(=r)本の第5のタイプの枝ET3−5で接続されることを示す。第2行第3列は、第2のタイプの検査ノードCT3−2と第2のタイプの変数ノードVT3−2との間が3(=r)本の第3のタイプの枝ET3−3で接続されることを示す。第2行第4列は、第2のタイプの検査ノードCT3−2と第3のタイプ(列インデックス=4)の変数ノードVT3−3との間が2(=g)本の第4のタイプの枝ET3−4で接続されることを示す。
以上のように設計された基本行列(=B)は、(1+d)個の展開行列(=B,・・・,B)へと展開される。以降の説明では、d=1の場合の展開例が示されるが、基本行列は任意の技法によって(1+d)個の展開行列へと展開されてよい。上記数式(3)より、d=1の場合には下記数式(11)が成立する。
Figure 0005696068
本例において、Bは下記数式(12)に示される展開行列とすることができる。
Figure 0005696068
数式(12)において、行列Iはk行×k列の単位行列である。行列Vは下記数式(13)に示されるように、k行×1列の行列(即ち、縦ベクトル)である。行列Vの要素は全て「1」である。
Figure 0005696068
上記数式(2)及び数式(11)によれば、空間結合行列は下記数式(14)で表すことができる。
Figure 0005696068
尚、この空間結合行列のうち、基本行列の左から第2+e列に対応するL個の列、即ち、第2+e列、第2+e+(2+e+k)列、・・・、第2+e+(L−1)(2+e+k)列は、パンクチャビットに対応する。よって、数式(14)の空間結合行列に基づく空間結合LDPC符号の符号化率は、下記数式(15)で表すことができる。
Figure 0005696068
数式(15)に示されるように、上記数式(14)の空間結合行列に基づく空間結合LDPC符号の符号化率は、基本行列に基づくプロトグラフLDPC符号の符号化率(上記数式(7)参照)に比べて低くなる。しかしながら、符号化率の低下分(k/(1+e+k)L)は、Lを大きくすることによって零に近付けることができる。
上記数式(14)の空間結合行列に複製置換操作を施すことによって、空間結合LDPC符号を定義するパリティ検査行列を導出することができる。パリティ検査行列(=H)は、下記数式(16)で表すことができる。
Figure 0005696068
数式(16)において、Zは複製数を表す。数式(16)のパリティ検査行列は、2個の非零行列(=H (l),H (l))を行方向に結合した2(1+k)Z行×(2+e+k)Z列の非零行列を対角方向にL個配列したものである。この対角方向に配列されたL個の非零行列は帯行列と呼ぶこともできる。ここで、lは1以上L以下の整数であり、パリティ検査行列における上記非零行列の列位置に対応するセクションを表す。
数式(16)において、H (l)は、Bに複製置換操作を施すことによって得られる行列である。同様に、H (l)は、Bに複製置換操作を施すことによって得られる行列である。尚、図2にも示されるように、複製置換操作は置換操作に自由度があるので、複製数が同一であったとしても同じ展開行列から様々な非零行列を得ることができる。従って、H (l)は、セクション毎に異なってもよいし、複数のセクションに亘って共通であってもよい。同様に、H (l)は、セクション毎に異なってもよいし、複数のセクションに亘って共通であってもよい。H (l)は、下記数式(17)で表すことができる。H (l)は、下記数式(18)で表すことができる。
Figure 0005696068
Figure 0005696068
数式(17)に示される各部分行列は、Bの各部分行列に複製置換操作を施すことによって得られる。例えば、E→E(l)、(A−V)→A(l)、(D−I)→F(l)である。尚、説明を簡単にするため、数式(17)に示したH (l)の一部をZ行×Z列の単位行列Iで構成するが、どのような複製置換操作で得られたパリティ検査行列であっても、行基本変形により数式(17)のパリティ検査行列が得られるため、一般性を失わない。数式(18)に示される各部分行列は、Bの各部分行列に複製置換操作を施すことによって得られる。例えば、V→P(l)である。
本実施形態に係る符号化装置は、例えば上記数式(16)のパリティ検査行列によって定義される空間結合LDPC符号語を生成する。以降の説明において、簡単化のために、k=1+eとする。また、全てのセクションに亘って部分行列C(l)及びF(l)は、フルランクであるとする。更に、下記数式(19)に示される行列もまたフルランクであるとする。
Figure 0005696068
数式(19)の行列は、上記数式(16)のパリティ検査行列のうち第Lセクションに対応する部分行列に含まれており、係る部分行列からパリティビットの生成に寄与しない零要素のみからなる行を省いたものに相当する。尚、これらの条件の一部または全部が満たされない場合であっても、下記に説明される事項を適宜変形することによって、本実施形態に係る符号化装置を実装することができる。
本実施形態に係る符号化装置は、第1セクションから第L−1セクションまでにおける動作と、第Lセクションにおける動作とが異なる。符号化装置は、第1セクションから第L−1セクションまでにおいて、セクション毎に情報ビット列を入力し、当該セクションのパリティビット列を生成する。他方、符号化装置は、第Lセクションにおいて情報ビット列を入力せずに、第Lセクションのパリティビット列を生成する。
符号化装置は、第lセクション(但し、1≦l≦L−1)の情報ビット列(=u (l),u (l))に対して第lセクションのパリティビット列(=v(l),w(l))を生成する。各情報ビット列の長さは、(1+e)Zビットである。各パリティビット列の長さは、(1+k)Zビットである。具体的には、第lセクションの第1の情報ビット列(=u (l))の長さはZビットであり、第lセクションの第2の情報ビット列(=u (l))の長さはeZビットであり、第lセクションのパンクチャパリティビット列(=v(l))の長さはZビットであり、第lセクションの出力パリティビット列(=w(l))の長さはkZビットである。これらのうちパンクチャパリティビット列は、出力ビット列には含められず外部へ供給されない。即ち、第lセクションの出力ビット列は、(u (l),u (l),w(l))である。各出力ビット列の長さは、(1+e+k)Z(=2kZ)ビットである。
符号化装置は、下記数式(20)に従って、第1セクションの第1の情報ビット列(=u (1))に基づいて第1セクションのパンクチャパリティビット列(=v(1))を生成できる。尚、以降の説明において、各種ビット列は横ベクトルとして扱われるものとする。また、ベクトルまたは行列に付された「T」は転置を表すものとし、行列に付された「−1」は逆行列を表すものとする。
Figure 0005696068
符号化装置は、下記数式(21)に従って、第1セクションの第2の情報ビット列(=u (1))及びパンクチャパリティビット列(=v(1))に基づいて第1セクションの出力パリティビット列(=w(1))を生成できる。
Figure 0005696068
符号化装置は、下記数式(22)に従って、第lセクション(但し、2≦l≦L−1)の第1の情報ビット列(=u (l))に基づいて第lセクションのパンクチャパリティビット列(=v(l))を生成できる。
Figure 0005696068
符号化装置は、下記数式(23)に従って、第l−1セクション(但し、2≦l≦L−1)のパンクチャパリティビット列(=v(l−1))及び出力パリティビット列(=w(l−1))と、第lセクションの第2の情報ビット列(=u (l))及びパンクチャパリティビット列(=v(l))とに基づいて第lセクションの出力パリティビット列(=w(l))を生成できる。
Figure 0005696068
数式(23)に示されるように、第lセクションの出力パリティビット列を生成するために、第l−1セクションのパンクチャパリティビット列及び出力パリティビットが必要である。即ち、この空間結合LDPC符号において、出力パリティビット列は、逐次的な計算を通じて生成される。
符号化装置は、第Lセクションにおいて、情報ビット列を入力せずに第Lセクションのパリティビット列(=w (L),v(L),w (L))を生成する。第Lセクションのパリティビット列の長さは、(1+2k)Zビットである。具体的には、第Lセクションの第1の出力パリティビット列(=w (L))の長さはkZビットであり、第Lセクションのパンクチャパリティビット列(=v(L))の長さはZビットであり、第Lセクションの第2の出力パリティビット列(=w (L))の長さはkZビットである。これらのうちパンクチャパリティビット列は、出力ビット列には含められず外部へ供給されない。即ち、第Lセクションの出力ビット列は、(w (L),w (L))である。第Lセクションの出力ビット列の長さは、(k+k)Z(=2kZ)ビットである。
符号化装置は、下記数式(24)及び数式(25)に従って、第L−1セクションのパンクチャパリティビット列(=v(L−1))及び出力パリティビット列(=w(L−1))に基づいて第Lセクションの第1の出力パリティビット列(=w (L))、パンクチャパリティビット列(=v(L))、第2の出力パリティビット列(=w (L))を生成できる。
Figure 0005696068
Figure 0005696068
以上のように生成された第1,・・・,第Lセクションの符号語ビット列(=c(0),c(1),・・・,c(L))は、下記数式(26)を満足する。尚、前述の通り、1≦l≦L−1の場合にはc(l)=(u (l),u (l),v(l),w(l))であり、c(L)=(w (L),v(L),w (L))である。即ち、本実施形態に係る符号化装置は、組織符号化を実現する。
Figure 0005696068
図1に示される符号化装置100は、上記第1,・・・,第Lセクションの符号語ビット列(=c(0),c(1),・・・,c(L))を生成するものである。図1の符号化装置は、分割部101と、行列演算部102,103,104と、ベクトル加算部105と、行列演算部106,107と、遅延部108と、行列演算部109と、遅延部110と、行列演算部111と、遅延部112と、行列演算部113と、遅延部114と、ベクトル加算部115と、行列演算部116とを備える。
分割部101は、第lセクション(但し、1≦l≦L−1)において、ビット列10−lを入力する。尚、情報ビット列10−lは、(u (l),u (l))に相当する。分割部101は、情報ビット列10−lを第lセクションの第1の情報ビット列11−l及び第2の情報ビット列12−lへと分割する。第1の情報ビット列11−lはu (l)に相当し、第2の情報ビット列12−lはu (l)に相当する。分割部101は、第1の情報ビット列11−lを行列演算部102へと出力し、第2の情報ビット列12−lを行列演算部103へと出力する。
行列演算部102は、第lセクション(但し、1≦l≦L−1)において、分割部101から第1の情報ビット列11−lを入力する。行列演算部102は、上記数式(20)及び数式(22)に示されるように、(C(l)−1を第1の情報ビット列11−lに乗算し、セクションlのパンクチャパリティビット列13−lを得る。パンクチャパリティビット列13−lは、v(l)に相当する。行列演算部102は、パンクチャパリティビット列13−lを行列演算部104へと出力する。更に、行列演算部102は、第1,・・・,第L−2セクションにおいてパンクチャパリティビット列13−1,・・・,13−(L−2)を行列演算部107へと出力し、第L−1セクションにおいてパンクチャパリティビット列13−(L−1)を行列演算部111へと出力する。
行列演算部103は、第lセクション(但し、1≦l≦L−1)において、分割部101から第2の情報ビット列12−lを入力する。行列演算部103は、上記数式(21)及び数式(23)に示されるように、E(l)を第2の情報ビット列12−lに乗算し、第lセクションの第1の中間ベクトルを得る。行列演算部103は、第lセクションの第1の中間ベクトルをベクトル加算部105へと出力する。
行列演算部104は、第lセクション(但し、1≦l≦L−1)において、行列演算部102からパンクチャパリティビット列13−lを入力する。行列演算部104は、上記数式(21)及び数式(23)に示されるように、A(l)をパンクチャパリティビット列13−lに乗算し、セクションlの第2の中間ベクトルを得る。行列演算部104は、セクションlの第2の中間ベクトルをベクトル加算部105へと出力する。
ベクトル加算部105は、第1セクションにおいて、行列演算部103から第1セクションの第1の中間ベクトルを入力し、行列演算部104から第1セクションの第2の中間ベクトルを入力する。ベクトル加算部105は、上記数式(21)に示されるように、第1の中間ベクトル及び第2の中間ベクトルを加算し、第1セクションの第3の中間ベクトルを得る。ベクトル加算部105は、第3の中間ベクトルを行列演算部106へと出力する。
ベクトル加算部105は、第lセクション(但し、2≦l≦L−1)において、行列演算部103から第lセクションの第1の中間ベクトルを入力し、行列演算部104から第lセクションの第2の中間ベクトルを入力する。後述されるように、ベクトル加算部105は、第lセクションにおいて、遅延部108から第l−1セクションの第4の中間ベクトルを更に入力し、遅延部110から第l−1セクションの第5の中間ベクトルを更に入力する。ベクトル加算部105は、上記数式(23)に示されるように、第1の中間ベクトル、第2の中間ベクトル、第4の中間ベクトル及び第5の中間ベクトルを加算し、第lセクションの第3の中間ベクトルを得る。ベクトル加算部105は、第3の中間ベクトルを行列演算部106へと出力する。
行列演算部106は、第lセクション(但し、1≦l≦L−1)において、ベクトル加算部105から第lセクションの第3の中間ベクトルを入力する。行列演算部106は、上記数式(21)及び数式(23)に示されるように、(F(l)−1を第3の中間ベクトルに乗算し、第lセクションの出力パリティビット列14−lを生成する。出力パリティビット列14−lは、w(l)に相当する。出力パリティビット列14−lは、前述のように、第lセクションの出力ビット列の一部として情報ビット列10−lと共に外部へと供給される。更に、行列演算部106は、第1,・・・,第L−2セクションにおいて出力パリティビット列14−1,・・・,14−(L−2)を行列演算部109へと供給し、第L−1セクションにおいて出力パリティビット列14−(L−1)を行列演算部113へと供給する。
行列演算部107は、第lセクション(但し、1≦l≦L−2)において、行列演算部102から第lセクションのパンクチャパリティビット列13−lを入力する。行列演算部107は、上記数式(23)に示されるように、P(l)をパンクチャパリティビット列13−lに乗算し、第lセクションの第4の中間ベクトルを得る。行列演算部107は、第4の中間ベクトルを遅延部108へと出力する。尚、P(l)は、各行に1つだけ非零要素を含む置換行列である。従って、行列演算部107は、インタリーバを用いて実装されてよい。
遅延部108は、第lセクション(但し、1≦l≦L−2)において、行列演算部107から第lセクションの第4の中間ベクトルを入力する。遅延部108は、第4の中間ベクトルにセクション1つ分に相当する単位遅延を与える。遅延部108は、第l+1セクションにおいて、第lセクションの第4の中間ベクトルをベクトル加算部105へと出力する。尚、遅延部108は、行列演算部107と順序を入れ替えられてもよい。
行列演算部109は、第lセクション(但し、1≦l≦L−2)において、行列演算部106から第lセクションの出力パリティビット列14−lを入力する。行列演算部109は、上記数式(23)に示されるように、Q(l)を出力パリティビット列14−lに乗算し、第lセクションの第5の中間ベクトルを得る。行列演算部109は、第5の中間ベクトルを遅延部110へと出力する。尚、Q(l)は、各行に1つだけ非零要素を含む置換行列である。従って、行列演算部109は、インタリーバを用いて実装されてよい。
遅延部110は、第lセクション(但し、1≦l≦L−2)において、行列演算部109から第lセクションの第5の中間ベクトルを入力する。遅延部110は、第5の中間ベクトルにセクション1つ分に相当する単位遅延を与える。遅延部110は、第l+1セクションにおいて、第lセクションの第5の中間ベクトルをベクトル加算部105へと出力する。尚、遅延部110は、行列演算部109と順序を入れ替えられてもよい。
行列演算部111は、第L−1セクションにおいて、行列演算部102から第L−1セクションのパンクチャパリティビット列13−(L−1)を入力する。行列演算部111は、上記数式(25)に示されるように、P(L−1)をパンクチャパリティビット列13−(L−1)に乗算し、第L−1セクションの第4の中間ベクトルを得る。行列演算部107は、第4の中間ベクトルを遅延部112へと出力する。尚、P(L−1)は、各行に1つだけ非零要素を含む置換行列である。従って、行列演算部111は、インタリーバを用いて実装されてよい。
遅延部112は、第L−1セクションにおいて、行列演算部111から第4の中間ベクトルを入力する。遅延部112は、第4の中間ベクトルにセクション1つ分に相当する単位遅延を与える。遅延部112は、第Lセクションにおいて、第4の中間ベクトルをベクトル加算部115へと出力する。
行列演算部113は、第L−1セクションにおいて、行列演算部106から第L−1セクションの出力パリティビット列14−(L−1)を入力する。行列演算部113は、上記数式(25)に示されるように、Q(L−1)を出力パリティビット列14−(L−1)に乗算し、第L−1セクションの第5の中間ベクトルを得る。行列演算部113は、第5の中間ベクトルを遅延部114へと出力する。尚、Q(L−1)は、各行に1つだけ非零要素を含む置換行列である。従って、行列演算部113は、インタリーバを用いて実装されてよい。
遅延部114は、第L−1セクションにおいて、行列演算部113から第5の中間ベクトルを入力する。遅延部114は、第5の中間ベクトルにセクション1つ分に相当する単位遅延を与える。遅延部114は、第Lセクションにおいて、第5の中間ベクトルをベクトル加算部115へと供給する。
ベクトル加算部115は、第Lセクションにおいて、遅延部112から第4の中間ベクトルを入力し、遅延部114から第5の中間ベクトルを入力する。ベクトル加算部115は、上記数式(25)に示されるように、第4の中間ベクトル及び第5の中間ベクトルを加算し、第6の中間ベクトルを得る。第6の中間ベクトルは、S(L)に相当する。ベクトル加算部115は、第6の中間ベクトルを行列演算部116へと出力する。
行列演算部116は、第Lセクションにおいて、ベクトル加算部115から第6の中間ベクトルを入力する。行列演算部116は、上記数式(24)に示されるように、第6の中間ベクトルの先頭にZ個の要素からなる零ベクトルを結合し、第6の中間ベクトルの末尾にkZ個の要素からなる零ベクトルを結合することによって、第7の中間ベクトルを得る。更に、行列演算部116は、数式(24)に示されるように、上記数式(19)に示される行列の逆行列を第7の中間ベクトルに乗算することによって、第Lセクションの出力パリティビット列14−Lを生成する。第Lセクションの出力パリティビット列14−Lは、(w (L),w (L))に相当する。出力パリティビット列14−Lは、前述のように、第Lセクションの出力ビット列として外部へと供給される。
尚、遅延部112は、行列演算部111と順序を入れ替えられてもよい。同様に、遅延部114は、行列演算部113と順序を入れ替えられてもよい。或いは、遅延部112,114が除去され、第6の中間ベクトル或いは第Lセクションの出力パリティビット列14−Lにセクション1つ分に相当する単位遅延を与える機能部が用意されてもよい。
本実施形態に係る符号化装置は、各種パラメータ(k,r,g,e,L)の設計を通じて様々な符号化率を達成できる。下記表1に、パラメータの設計例と、対応する符号化率、復号限界ならびにシャノン限界(理論限界)とが示される。尚、復号限界は、2元消失通信路上での復号可能な最大消失確率を密度発展法によって評価した結果が示される。
Figure 0005696068
表1から明らかなように、本実施形態に係る符号化装置は、様々な符号化率の下でシャノン限界に近い繰り返し復号性能を達成することができる。
以上説明したように、第1の実施形態に係る符号化装置は、例えば上記数式(3)に示される基本行列に基づく空間結合行列に対して複製置換操作を施すことによって得られるパリティ検査行列によって定義される符号語を生成する。従って、この符号化装置によれば、シャノン限界に近い繰り返し復号性能を達成する組織符号を生成することができる。尚、本実施形態に係る復号装置は、例えば上記数式(16)に示されるパリティ検査行列を用いて繰り返し復号を行うものであればよい。従って、その詳細な説明は省略される。
(第2の実施形態)
第1の実施形態に係る符号化装置及び復号装置は、例えば記憶装置に組み込まれる。第2の実施形態に係る記憶装置は、第1の実施形態に係る符号化装置及び復号装置を組み込む。尚、詳細な説明は省略されるが、第1の実施形態に係る符号化装置及び復号装置は、光記録装置、磁気記録装置など、誤り訂正符号を利用可能なあらゆる装置に組み込まれてよい。
図7に示されるように、第3の実施形態に係る記憶装置は、LDPC符号化部201と、不揮発性半導体メモリ202と、LDPC復号部203とを備える。また、簡単化のために、図7において不揮発性半導体メモリ202へのデータの読み書きを行う機能部が省略されている。しかしながら、記憶装置は、係る機能部を必要に応じて備えることができる。
LDPC符号化部201は、第1の実施形態に係る符号化装置に対応する。LDPC符号化部201は、前段の処理部(図示しない)からデータを入力し、当該データを構成する情報ビット列にLDPC符号化処理を行う。即ち、LDPC符号化部201は、情報ビット列にパリティビット列(パンクチャパリティビット列を除く)を付加してLDPC符号フレーム(即ち、出力ビット列)を生成する。尚、LDPC符号化部201は、上記数式(16)に示されるパリティ検査行列を利用して符号化処理を行う。LDPC符号化部201は、1以上のLDPC符号フレームを束ねてページデータを形成する。LDPC符号化部201は、ページデータを不揮発性半導体メモリ202へと出力する。
不揮発性半導体メモリ202への書き込み処理及び不揮発性半導体メモリ202からの読み出し処理は、いずれもページデータ単位で行われる。ページデータは、前述の通り、1以上のLDPC符号フレームが束ねられたものである。ページデータのサイズは、不揮発性半導体メモリ202の構成に依存するが、概ね数KB程度である。不揮発性半導体メモリ202は、複数のメモリセルを備える。具体的には、不揮発性半導体メモリ202は、例えば複数のメモリセルがNAND型に接続されたアレイ構造を備えるフラッシュメモリによって実現される。
各メモリセルは、2個以上の閾値電圧が割り当てられ、1ビット以上のデータを記憶できる。各メモリセルが記憶可能なデータ量は、各メモリセルに割り当てられる閾値電圧の総数によって決まる。例えば、1セルあたり2ビットを記憶するフラッシュメモリに関して、各セルには2ビット値のパターン:「00」,「01」,「10」,「11」に応じた4個の閾値が割り当てられる。メモリセルの閾値電圧は、隣接セルとの容量結合などの理由によって、揺らぐことがある。そして、この閾値電圧の揺らぎは、読み出しデータの誤りを引き起こす一因となる。
不揮発性半導体メモリ202は、LDPC符号化部201によって生成されたページデータを入力する。不揮発性半導体メモリ202は、ページデータをメモリセルに記憶する(書き込む)。また、不揮発性半導体メモリ202は、メモリセルに記憶されたページデータを読み出し、これを出力する。尚、前述の通り、閾値電圧の揺らぎなどの要因によって、ページデータは誤りを含んで読み出される可能性がある。
LDPC復号部203は、第1の実施形態に係る復号装置に対応する。LDPC復号部203は、不揮発性半導体メモリ202によって読み出されたページデータを入力する。LDPC復号部203は、ページデータに含まれる1以上のLDPC符号フレームの各々にLDPC復号処理を行う。LDPC復号処理は、パリティ検査行列を用いた繰り返し復号アルゴリズムによって実現される。繰り返し復号アルゴリズムは、例えば、sum−productアルゴリズム、min−sumアルゴリズムなどである。尚、LDPC復号部203は、上記数式(16)に示されるパリティ検査行列を用いる。
LDPC復号部203は、パリティ検査において誤りなしと判定した場合(即ち、復号成功の場合)に、一時推定語からパリティビット列を除去して情報ビット列を生成し、これを後段の信号処理部(図示しない)へと出力する。また、LDPC復号部203は、復号処理の試行回数が最大繰り返し回数に達した場合(即ち、復号失敗の場合)に、情報ビット列を後段の信号処理部(図示しない)へと出力してもよいし、復号の失敗を後段の信号処理部(図示しない)に通知してもよい。
以上説明したように、第2の実施形態に係る記憶装置は、第1の実施形態に係る符号化装置及び復号装置を組み込む。従って、この記憶装置によれば、データの読み出し時に強力な誤り訂正能力を発揮することができる。
(第3の実施形態)
第1の実施形態に係る符号化装置は、通信装置(送信機または送受信機)に組み込まれてもよい。第3の実施形態に係る通信装置は、図8に示されるように、LDPC符号化部301と、変調部302と、デジタルアナログ変換部303と、周波数変換部304と、アンテナ305とを備える。図8の通信装置は、典型的には、(セルラ、無線LAN(Local Area Network)などをサポートする)無線通信装置(送信機または送受信機)、放送波通信装置(送信機または送受信機)などである。また、図8には示されていないが、電力増幅器、フィルタなどを含むことも可能である。
LDPC符号化部301は、第1の実施形態に係る符号化装置に対応する。LDPC符号化部301は、前段の処理部(図示しない)からデータを入力し、当該データを構成する情報ビット列にLDPC符号化処理を行う。即ち、LDPC符号化部301は、情報ビット列にパリティビット列(パンクチャパリティビット列を除く)を付加してLDPC符号フレーム(即ち、出力ビット列)を生成する。尚、LDPC符号化部301は、上記数式(16)に示されるパリティ検査行列を利用して符号化処理を行う。LDPC符号化部301は、LDPC符号フレームを変調部302へと出力する。
変調部302は、LDPC符号フレームを変調する。デジタルアナログ変換部303は、変調部302からの変調信号をデジタルアナログ変換する。周波数変換部304は、デジタルアナログ変換部303からのベースバンド送信信号をアップコンバートする。アンテナ305は、周波数変換部304からのRF送信信号を放射する。
また、通信装置(受信機または送受信機)は、第1の実施形態に係る復号装置を組み込むこともできる。本実施形態に係る通信装置は、図9に示されるように、アンテナ401と、周波数変換部402と、アナログデジタル変換部403と、復調部404と、LDPC復号部405とを備える。図9の通信装置は、典型的には、(セルラ、無線LANなどをサポートする)無線通信装置(受信機または送受信機)、放送波通信装置(受信機または送受信機)などである。また、図9には示されていないが、低雑音増幅器、フィルタなどを含むことも可能である。
アンテナ401は、高周波の無線信号を受信する。周波数変換部402は、アンテナ401からのRF受信信号をダウンコンバートする。アナログデジタル変換部403は、周波数変換部402からのベースバンド受信信号をアナログデジタル変換する。復調部404は、送信側の変調方式に従って、アナログデジタル変換部403からのデジタル信号を復調する。
LDPC復号部405には、前述の第1の実施形態に係る復号装置が組み込まれる。LDPC復号部405は、送信側の符号化方式に従って、復調部404からの復調データにLDPC復号処理を行い、受信データを復元する。具体的には、LDPC復号処理は、パリティ検査行列を用いた繰り返し復号アルゴリズムによって実現される。繰り返し復号アルゴリズムは、例えば、sum−productアルゴリズム、min−sumアルゴリズムなどである。尚、LDPC復号部405は、上記数式(16)に示されるパリティ検査行列を用いる。
以上説明したように、第3の実施形態に係る通信装置は、前述の第1の実施形態に係る符号化装置または復号装置を組み込んでいる。従って、この通信装置によれば、受信データの復元において強力な誤り訂正能力を発揮できる。
上記各実施形態の処理は、汎用のコンピュータを基本ハードウェアとして用いることで実現可能である。上記各実施形態の処理を実現するプログラムは、コンピュータで読み取り可能な記憶媒体に格納して提供されてもよい。プログラムは、インストール可能な形式のファイルまたは実行可能な形式のファイルとして記憶媒体に記憶される。記憶媒体としては、磁気ディスク、光ディスク(CD−ROM、CD−R、DVD等)、光磁気ディスク(MO等)、半導体メモリなどである。記憶媒体は、プログラムを記憶でき、かつ、コンピュータが読み取り可能であれば、何れであってもよい。また、上記各実施形態の処理を実現するプログラムを、インターネットなどのネットワークに接続されたコンピュータ(サーバ)上に格納し、ネットワーク経由でコンピュータ(クライアント)にダウンロードさせてもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10,11,12・・・情報ビット列
13・・・パンクチャパリティビット列
14・・・出力パリティビット列
100・・・符号化装置
101・・・分割部
102,103,104,106,107,109,111,113,116・・・行列演算部
105,115・・・ベクトル加算部
108,110,112,114・・・遅延部
201,301・・・LDPC符号化部
202・・・不揮発性半導体メモリ
203,405・・・LDPC復号部
302・・・変調部
303・・・デジタルアナログ変換器
304,402・・・周波数変換部
305,401・・・アンテナ
403・・・アナログデジタル変換器
404・・・復調部

Claims (8)

  1. 情報ビット列に符号化を行うことによって、パリティ検査行列に対応する符号語を生成する符号化部を具備し、
    前記パリティ検査行列は、空間結合行列に複製置換操作を施すことによって得られる行列に一致し、
    前記空間結合行列において、複数の展開行列を行方向に結合した行列が対角方向に複数個配列され、
    前記複数の展開行列の総和は、基本行列に一致し、
    前記基本行列は、n個(nは1以上の整数)の第1のタイプの検査ノードと、n個の第2のタイプの検査ノードと、n個の第1のタイプの変数ノードと、n個の第2のタイプの変数ノードと、n個の第3のタイプの変数ノードと、n本以上の第1のタイプの枝と、2n本以上の第2のタイプの枝と、rn本(rは3以上の整数)の第3のタイプの枝と、gn本(gは2以上の整数)の第4のタイプの枝とを含むプロトグラフに対応し、
    前記プロトグラフにおいて、前記n個の第1のタイプの検査ノードの各々は、前記n個の第1のタイプの変数ノードと合計1本以上の前記第1のタイプの枝によって接続され、前記n個の第2のタイプの変数ノードと合計2本以上の前記第2のタイプの枝によって接続され、
    前記プロトグラフにおいて、前記n個の第2のタイプの検査ノードの各々は、前記n個の第2のタイプの変数ノードと合計r本の前記第3のタイプの枝によって接続され、前記n個の第3のタイプの変数ノードと合計g本の前記第4のタイプの枝によって接続され、
    前記プロトグラフにおいて、前記n個の第1のタイプの変数ノードの各々は、前記n個の第1のタイプの検査ノードと合計1本以上の前記第1のタイプの枝によって接続され、
    前記プロトグラフにおいて、前記n個の第2のタイプの変数ノードの各々は、前記n個の第1のタイプの検査ノードと合計2本以上の前記第2のタイプの枝によって接続され、前記n個の第2のタイプの検査ノードと合計r本の前記第3のタイプの枝によって接続され、
    前記プロトグラフにおいて、前記n個の第3のタイプの変数ノードの各々は、前記n個の第2のタイプの検査ノードと合計g本の前記第4のタイプの枝によって接続される、
    符号化装置。
  2. 前記プロトグラフは、n個の第i+1(iは2以上k以下の全ての整数を意味し、kは2以上のいずれかの整数を意味する)のタイプの検査ノードと、n個の第i+2のタイプの変数ノードと、rn本の第2i+1のタイプの枝と、gn本の第2i+2のタイプの枝とを更に含み、
    前記プロトグラフにおいて、前記n個の第i+1のタイプの検査ノードの各々は、前記n個の第2のタイプの変数ノードと合計r本の前記第2i+1のタイプの枝によって接続され、前記n個の第i+2のタイプの変数ノードと合計g本の前記第2i+2のタイプの枝によって接続され、
    前記プロトグラフにおいて、前記n個の第i+2のタイプの変数ノードの各々は、前記n個の第i+1のタイプの検査ノードと合計g本の前記第2i+2のタイプの枝によって接続され、
    前記プロトグラフにおいて、前記n個の第2のタイプの変数ノードの各々は、更に、前記n個の第i+1のタイプの検査ノードと合計r本の前記第2i+1のタイプの枝によって接続される、
    請求項1の符号化装置。
  3. 前記プロトグラフは、n個の第i+3(iは1以上e以下の全ての整数を意味し、eは1以上のいずれかの整数を意味する)のタイプの変数ノードと、rn本の第i+4のタイプの枝とを更に含み、
    前記プロトグラフにおいて、前記n個の第i+3のタイプの変数ノードの各々は、前記n個の第2のタイプの検査ノードと合計r本の前記第i+4のタイプの枝によって接続され、
    前記プロトグラフにおいて、前記n個の第2のタイプの検査ノードの各々は、更に、前記n個の第i+3のタイプの変数ノードと合計r本の前記i+4のタイプの枝によって接続される、
    請求項1の符号化装置。
  4. r=3かつg=2である、請求項1の符号化装置。
  5. 前記プロトグラフにおいて、前記n個の第1のタイプの検査ノードの各々は、前記n個の第1のタイプの変数ノードと合計1本の前記第1のタイプの枝によって接続され、前記n個の第2のタイプの変数ノードと合計2本の前記第2のタイプの枝によって接続され、
    前記プロトグラフにおいて、前記n個の第1のタイプの変数ノードの各々は、前記n個の第1のタイプの検査ノードと合計1本の前記第1のタイプの枝によって接続され、
    前記プロトグラフにおいて、前記n個の第2のタイプの変数ノードの各々は、前記n個の第1のタイプの検査ノードと合計2本の前記第2のタイプの枝によって接続される、
    請求項1の符号化装置。
  6. 情報ビット列に符号化を行うことによって、パリティ検査行列に対応する符号語を生成する符号化部を具備し、
    前記パリティ検査行列は、空間結合行列に複製置換操作を施すことによって得られる行列に一致し、
    前記空間結合行列において、複数の展開行列を行方向に結合した行列が対角方向に複数個配列され、
    前記複数の展開行列の総和は、基本行列に一致し、
    前記基本行列は、第1のタイプの検査ノードと、第2のタイプの検査ノードと、第1のタイプの変数ノードと、第2のタイプの変数ノードと、第3のタイプの変数ノードと、1本以上の第1のタイプの枝と、2本以上の第2のタイプの枝と、r本(rは3以上の整数)の第3のタイプの枝と、g本(gは2以上の整数)の第4のタイプの枝とを含むプロトグラフに対応し、
    前記プロトグラフにおいて、前記第1のタイプの検査ノードは、前記第1のタイプの変数ノードと前記1本以上の第1のタイプの枝によって接続され、前記第2のタイプの変数ノードと前記2本以上の第2のタイプの枝によって接続され、
    前記プロトグラフにおいて、前記第2のタイプの検査ノードは、前記第2のタイプの変数ノードと前記r本の第3のタイプの枝によって接続され、前記第3のタイプの変数ノードと前記g本の第4のタイプの枝によって接続される、
    符号化装置。
  7. 前記複数の展開行列は、第1の展開行列及び第2の展開行列を含み、
    前記基本行列に対応するプロトグラフは、前記第1の展開行列に対応する第1の部分プロトグラフと、前記第2の展開行列に対応する第2の部分プロトグラフとの和に一致し、
    前記第1の部分プロトグラフにおいて、前記第2のタイプの検査ノードは、前記第2のタイプの変数ノードと1本の前記第3のタイプの枝によって接続され、前記第3のタイプの変数ノードと1本の前記第4のタイプの枝によって接続され、
    前記第2の部分プロトグラフにおいて、前記第1のタイプの検査ノードは、前記第1のタイプの変数ノードと前記1本以上の第1のタイプの枝によって接続され、前記第2のタイプの変数ノードと前記2本以上の第2のタイプの枝によって接続され、
    前記第2の部分プロトグラフにおいて、前記第2のタイプの検査ノードは、前記第2のタイプの変数ノードとr−1本の前記第3のタイプの枝によって接続され、前記第3のタイプの変数ノードとg−1本の前記第4のタイプの枝によって接続される、
    請求項6の符号化装置。
  8. 請求項1の符号化装置と、
    前記符号語を変調し、変調信号を得る変調部と、
    前記変調信号をデジタル−アナログ変換し、ベースバンド送信信号を得るデジタルアナログ変換部と、
    前記ベースバンド送信信号をアップコンバートし、RF送信信号を得る周波数変換部と
    を具備する通信装置。
JP2012037397A 2012-02-23 2012-02-23 符号化装置及び通信装置 Expired - Fee Related JP5696068B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012037397A JP5696068B2 (ja) 2012-02-23 2012-02-23 符号化装置及び通信装置
EP12199353.9A EP2632050A1 (en) 2012-02-23 2012-12-24 Encoding apparatus and communication apparatus
US13/727,422 US9264072B2 (en) 2012-02-23 2012-12-26 Encoding apparatus and communication apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012037397A JP5696068B2 (ja) 2012-02-23 2012-02-23 符号化装置及び通信装置

Publications (2)

Publication Number Publication Date
JP2013175799A JP2013175799A (ja) 2013-09-05
JP5696068B2 true JP5696068B2 (ja) 2015-04-08

Family

ID=47631223

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012037397A Expired - Fee Related JP5696068B2 (ja) 2012-02-23 2012-02-23 符号化装置及び通信装置

Country Status (3)

Country Link
US (1) US9264072B2 (ja)
EP (1) EP2632050A1 (ja)
JP (1) JP5696068B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10193570B2 (en) 2013-12-03 2019-01-29 Samsung Electronics Co., Ltd Method of and apparatus for generating spatially-coupled low-density parity-check code
DE102016201408B4 (de) * 2016-01-29 2017-11-30 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zum Übertragen von Daten
US10949298B2 (en) 2018-09-21 2021-03-16 Taiwan Semiconductor Manufacturing Company, Limited System and method of reducing logic for multi-bit error correcting codes
CN110768676A (zh) * 2019-08-18 2020-02-07 宁波职业技术学院 一种编码方法、装置、计算机设备和存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7499490B2 (en) * 2005-06-24 2009-03-03 California Institute Of Technology Encoders for block-circulant LDPC codes
US7343539B2 (en) * 2005-06-24 2008-03-11 The United States Of America As Represented By The United States National Aeronautics And Space Administration ARA type protograph codes
US8132072B2 (en) * 2006-01-06 2012-03-06 Qualcomm Incorporated System and method for providing H-ARQ rate compatible codes for high throughput applications
US8504890B2 (en) * 2006-12-17 2013-08-06 Ramot At Tel Aviv University Ltd. Scheduling for LDPC decoding
US8117523B2 (en) * 2007-05-23 2012-02-14 California Institute Of Technology Rate-compatible protograph LDPC code families with linear minimum distance
JP2009100234A (ja) * 2007-10-16 2009-05-07 Panasonic Corp 符号化器、符号化方法、及び復号方法
US8464123B2 (en) * 2009-05-07 2013-06-11 Ramot At Tel Aviv University Ltd. Matrix structure for block encoding
JP5526901B2 (ja) * 2010-03-19 2014-06-18 富士通株式会社 直交変復調機能を含む無線通信装置におけるiq不平衡補正方法
WO2012039798A2 (en) * 2010-06-15 2012-03-29 California Institute Of Technology Rate-compatible protograph ldpc codes
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

Also Published As

Publication number Publication date
US20130227372A1 (en) 2013-08-29
JP2013175799A (ja) 2013-09-05
US9264072B2 (en) 2016-02-16
EP2632050A1 (en) 2013-08-28

Similar Documents

Publication Publication Date Title
JP4672016B2 (ja) 低密度パリティ検査行列を用いた符号化及び復号化方法
KR101662747B1 (ko) 높은 병렬성, 낮은 에러 플로어, 및 간단한 인코딩 원리를 갖는 리프팅된 ldpc 코드들에 대한 설계
US8583980B2 (en) Low density parity check (LDPC) code
JP4820368B2 (ja) Ldpcコードを用いた符号化及び復号化方法
RU2595542C2 (ru) Устройство и способ для передачи и приема данных в системе связи/широковещания
JP4062435B2 (ja) 誤り訂正符号復号装置
KR101227264B1 (ko) Ldpc 코드용 디코더
CN107370490B (zh) 结构化ldpc的编码、译码方法及装置
WO2006075382A1 (ja) 符号化方法、復号方法及びそれらの装置
KR101283087B1 (ko) 복호장치, 제어 방법, 및 기록 매체
US20100325511A1 (en) Method of generating parity-check matrix, encoding/decoding method for low density parity-check code with variable information length and variable code rate and apparatus using the same
EP2963831B1 (en) Encoding termination of ldpc convolutional codes (ldpc-cc)
JP2008503975A (ja) Ldpcコードを用いた可変コードレート適応符号化及び復号化方法
JP5997349B2 (ja) 符号化装置
US10382069B2 (en) Data encoding by efficient inversion of a parity-check sub-matrix
KR20080033381A (ko) 검사 행렬 생성 방법, 부호화 방법, 복호 방법, 통신 장치,통신 시스템, 부호화기 및 복호기
US9825650B2 (en) Decoder architecture for cyclically-coupled quasi-cyclic low-density parity-check codes
CN109586732B (zh) 中短码ldpc编解码***和方法
JP6990259B2 (ja) 疑似サイクリック低密度パリティチェックの設計方法および装置
JP4672015B2 (ja) 低密度パリティ検査コードを用いた符号化及び復号化方法
JP4832447B2 (ja) チャネルコードを用いた復号化装置及び方法
JP5696068B2 (ja) 符号化装置及び通信装置
JP5333233B2 (ja) 復号装置、データ蓄積装置、データ通信システム、および復号方法
Bajpai et al. A new construction method for large girth quasi-cyclic ldpc codes with optimized lower bound using chinese remainder theorem
CN113055024B (zh) 用于5g-nr***短块长低码率ldpc码的修正译码方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131205

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131212

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131219

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131226

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140109

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140325

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141225

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150209

R151 Written notification of patent or utility model registration

Ref document number: 5696068

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees